This is an implementation of the log-structured merge tree, one of the course project of SE2322 - Advanced Data Structure @SJTU-SE.
kvstore_api.h specifies the interfaces provided by the storage system.
rmdir build
cmake ..
Under project root
cd build
make correctness_test
make persistence_test
make performance_test
correctness_test
tests the correctness of the system by callingPut
,Get
,Del
for a large number of times and in different order.persistence_test
tests whether the system can restore its state from data files.performance_test
performs the benchmarking described in the project report.
cd build
make demo
See the report (in Chinese).