Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Ayanami1314/LSM-KV
https://github.com/Ayanami1314/LSM-KV
Last synced: 5 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/Ayanami1314/LSM-KV
- Owner: Ayanami1314
- Created: 2024-04-01T16:31:14.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-08-17T17:18:11.000Z (6 months ago)
- Last Synced: 2025-01-24T12:45:58.275Z (6 days ago)
- Language: C++
- Size: 6.85 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-se - Ayanami-2022
README
## Project LSM-KV: KVStore using Log-structured Merge Tree
The handout files include two main parts:
- The `KVStoreAPI` class in `kvstore_api.h` that specifies the interface of KVStore.
- Test files including correctness test (`correctness.cc`) and persistence test (`persistence.cc`).Explanation of each handout file:
```text
.
├── Makefile // Makefile if you use GNU Make
├── README.md // This readme file
├── correctness.cc // Correctness test, you should not modify this file
├── data // Data directory used in our test
├── kvstore.cc // your implementation
├── kvstore.h // your implementation
├── kvstore_api.h // KVStoreAPI, you should not modify this file
├── persistence.cc // Persistence test, you should not modify this file
├── utils.h // Provides some file/directory interface
├── MurmurHash3.h // Provides murmur3 hash function
└── test.h // Base class for testing, you should not modify this file
```First have a look at the `kvstore_api.h` file to check functions you need to implement. Then modify the `kvstore.cc` and `kvstore.h` files and feel free to add new class files.
We will use all files with `.cc`, `.cpp`, `.cxx` suffixes to build correctness and persistence tests. Thus, you can use any IDE to finish this project as long as you ensure that all C++ source files are submitted.
For the test files, of course you could modify it to debug your programs. But remember to change it back when you are testing.
Good luck :)