finish 2.1 and tests

Signed-off-by: Alex Chi Z <iskyzh@gmail.com>
This commit is contained in:
Alex Chi Z
2024-01-23 13:44:48 +08:00
parent bb8eb4a1a2
commit 274a2cb7a2
28 changed files with 651 additions and 61 deletions

View File

@@ -17,8 +17,9 @@ In this chapter, you will:
* Is it correct that a key will only be purged from the LSM tree if the user requests to delete it and it has been compacted in the bottom-most level?
* Is it a good strategy to periodically do a full compaction on the LSM tree? Why or why not?
* Actively choosing some old files/levels to compact even if they do not violate the level amplifier would be a good choice, is it true? (Look at the Lethe paper!)
* Actively choosing some old files/levels to compact even if they do not violate the level amplifier would be a good choice, is it true? (Look at the [Lethe](https://disc-projects.bu.edu/lethe/) paper!)
* If the storage device can achieve a sustainable 1GB/s write throughput and the write amplification of the LSM tree is 10x, how much throughput can the user get from the LSM key-value interfaces?
* Can you merge L1 and L3 directly if there are SST files in L2? Does it still produce correct result?
* What is your favorite boba shop in your city? (If you answered yes in week 1 day 3...)
We do not provide reference answers to the questions, and feel free to discuss about them in the Discord community.