• Stars
    star
    130
  • Rank 277,575 (Top 6 %)
  • Language
    C++
  • License
    MIT License
  • Created over 3 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

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

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!

More Repositories