Might be a graph storage engine.
- PageStore interface and implementation based on leveldb
- LogStore interface and implementation based on Env of leveldb
- BufferPoolManager
- [] Swap pages
- Type Subsystem: Schema, Properties
- Sortkey
- row read/write
- [] More row type
- In-memory page read/write
- [] More page type. i.e. COW page
- 1-level Btr
- Versioned Btr
- Transaction component
- Implement Hekaton style occ
- [] More concurrency control protocol
- Graph interface
- WAL
- Recovery
- Page serialization/deserialization
- Flush dirty page
- Support range scan
- [] 2-level Btr
- [] Multi-level Btr
Init git submodule
git submodule update --init --recursive
Jemalloc is required.
sudo apt install libjemalloc-dev
brpc dependency
sudo apt-get install -y git g++ make libssl-dev libgflags-dev libprotobuf-dev libprotoc-dev protobuf-compiler libleveldb-dev