Skip to content

An update-in-place key-value store for modern storage.

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.leveldb
Unknown
LICENSE.rocksdb
Notifications You must be signed in to change notification settings

mitdbg/treeline

Repository files navigation

TreeLine

An embedded key-value store for modern SSDs.

Building from source

Install Dependencies

A few packages that TreeLine depends on are

  • libtbb-dev
  • autoconf
  • libjemalloc-dev

Depending on the distribution you have, ensure the above packages are installed. On Ubuntu, you can install the dependencies using apt:

sudo apt install libtbb-dev autoconf libjemalloc-dev

TreeLine's other dependencies are fetched by CMake during compilation.

Compile

CMake 3.17+ is required for building this project.

mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release .. && make -j

To build the tests, turn on the TL_BUILD_TESTS option when configuring.

cmake -DCMAKE_BUILD_TYPE=Release -DTL_BUILD_TESTS=ON .. && make -j

To build the benchmarks, turn on the TL_BUILD_BENCHMARKS option when configuring.

cmake -DCMAKE_BUILD_TYPE=Release -DTL_BUILD_BENCHMARKS=ON .. && make -j

Inspecting the codebase

If you would like to read more about the internals of TreeLine, you can start at this header file.

The bulk of the code that comprises the current version of the system can be found in the page_grouping/ directory.

Thank you for your interest in diving deeper in our work!

About

An update-in-place key-value store for modern storage.

Topics

Resources

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.leveldb
Unknown
LICENSE.rocksdb

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •