treeline

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

https://github.com/mitdbg/treeline

Science Score: 52.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
    Organization mitdbg has institutional domain (dsg.csail.mit.edu)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.4%) to scientific vocabulary

Keywords

cpp key-value-store keyvaluestore kvs
Last synced: 6 months ago · JSON representation ·

Repository

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

Basic Info
  • Host: GitHub
  • Owner: mitdbg
  • License: mit
  • Language: C++
  • Default Branch: master
  • Homepage:
  • Size: 5.63 MB
Statistics
  • Stars: 140
  • Watchers: 7
  • Forks: 18
  • Open Issues: 8
  • Releases: 0
Topics
cpp key-value-store keyvaluestore kvs
Created over 4 years ago · Last pushed about 2 years ago
Metadata Files
Readme License Citation Authors

README.md

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.

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

To build the tests, turn on the TL_BUILD_TESTS option when configuring. bash cmake -DCMAKE_BUILD_TYPE=Release -DTL_BUILD_TESTS=ON .. && make -j

To build the benchmarks, turn on the TL_BUILD_BENCHMARKS option when configuring. bash 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!

Owner

  • Name: MIT DB Group
  • Login: mitdbg
  • Kind: organization
  • Location: Cambridge, MA 02139

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use TreeLine, please cite it as below."
authors:
- family-names: "Yu"
  given-names: "Geoffrey X."
- family-names: "Markakis"
  given-names: "Markos"
- family-names: "Kipf"
  given-names: "Andreas"
- family-names: "Larson"
  given-names: "Per-Åke"
- family-names: "Minhas"
  given-names: "Umar Farooq"
- family-names: "Kraska"
  given-names: "Tim"
title: "TreeLine: An Update-In-Place Key-Value Store for Modern Storage"
version: 1.0.0
date-released: 2022-09-25
url: "https://github.com/mitdbg/treeline"
preferred-citation:
  type: article
  authors:
  - family-names: "Yu"
    given-names: "Geoffrey X."
  - family-names: "Markakis"
    given-names: "Markos"
  - family-names: "Kipf"
    given-names: "Andreas"
  - family-names: "Larson"
    given-names: "Per-Åke"
  - family-names: "Minhas"
    given-names: "Umar Farooq"
  - family-names: "Kraska"
    given-names: "Tim"
  doi: "10.14778/3561261.3561270"
  journal: "Proceedings of the VLDB Endowment"
  month: 9
  start: 99
  end: 112
  title: "TreeLine: An Update-In-Place Key-Value Store for Modern Storage"
  issue: 1
  volume: 16
  year: 2022

GitHub Events

Total
  • Watch event: 13
  • Fork event: 2
Last Year
  • Watch event: 13
  • Fork event: 2

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v2 composite