A toy implementation of Log-Structured Merge-Tree (LSM tree), which is used in LevelDB and RocksDB.
This is meant for research purpose only, dont use it in production.
Finished:
- Memtable
- Persisted SSTable
- SSTable indexing with skip list
- Persist SSTable index instead of re-calculate
- Flush Memtable into SSTable
- Compaction
- WAL and recover from crash
- Thread safe
- Configurable