Closed min-guk closed 2 years ago
Of course, it is okay to answer in Korean.
When leveldb build is done, please check installation with $ ./db_bench
, not $ db_bench
.
Do not install rocksdb db_bench with sudo apt install rocksdb-tools
More hints for homework has been updated.
When studying the leveldb code such as leveldb/benchmarks/db_bench.cc
, please use VScode "Go to Definition(F12)" and "Go to References(Shift+F12)" features.
Hints for question 2 has been updated.
There was a mistake in question 5 and it has now been corrected. Please, check again.
[Deadline Extension]
Deadline has been extended until 7/18 12 PM. It's okay if you can't answer all the questions, please submit within the extended deadline.
Great work everyone!
Homework solutions have been uploaded. Individual solutions will be presented today so that everyone can have a reference on how the others addressed the homework.
And also, you can check how other students answered question.
Feedback for your submitted solution will be given starting tomorrow. See you later!
Please submit through google form until next Monday, 7/18 12PM
1. Why do LSM-tree and LevelDB use leveled structure?
Hint 1 - Stackoverflow
Hint 2 – Memory hierarchy Hint 3 - Patrick O'Neil, The Log-Structured Merge-Tree (LSM-Tree), 1996
2. In leveldb, max size of level i is 10^iMB. But max size of level 0 is 8MB. Why?
Hint 1 - leveldb source code
Hint 2 - leveldb-handbook, Compaction (Use google chrome translator)
3. Practice 1
4. Practice 2
5. Practice 3