TerarkDB is a high performance database with the best compression
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
rocksdb @ f65be57 Update rocksdb & terark-zip-rocksdb git hash ref Sep 27, 2018
terark-zip-rocksdb @ 89d9e6e Update rocksdb & terark-zip-rocksdb git hash ref Sep 27, 2018
.gitmodules .gitmodules: use https Apr 12, 2017
LICENSE Create LICENSE Mar 3, 2017
Makefile Add Makefile Apr 12, 2017
README.md Update README.md Apr 22, 2017

README.md

1. Introduction

TerarkDB is a core product of Terark. It is a RocksDB distribution that powered by ©™Terark algorithms. with these algorithms, TerarkDB is able to store more data and access much faster than official RocksDB(3+X more data and 10+X faster) on same hardware.

TerarkDB is completely compatible(binary compatible) with official RocksDB.

2. Installation & Documentation

Download precompiled terark-zip-rocksdb

TerarkDB Documentation

3. Components

TerarkDB has two components:

3.1. TerarkZipTable

TerarkZipTable is contained in the terark-zip-rocksdb submodule. TerarkZipTable is a RocksDB's SSTable(Static Sorted Table) implementation that using ©™Terark's searchable compression algorithms.

Download precompiled terark-zip-rocksdb

3.2. Terark modified RocksDB

We forked RocksDB and made a few changes to fit our algorithms, we've added it as submodule rocksdb here.

Our changes for RocksDB does not change any RocksDB API, and does not have any extra dependencies, say, Terark modified RocksDB does not depend on TerarkZipTable(Without TerarkZipTable, Terark RocksDB works exactly same as official RocksDB).

Our changes includes:

  • Add optional two pass scan on SSTable build, existing SSTable is not impacted
  • Add TerarkZipTable config by env var
    • This change using functions in libterark-zip-table as weak symbol, this is why it does not depends on TerarkZipTable

4. Benchmark

see Benchmark in wiki

5. License

This software is open source.

5.1 submodule rocksdb

submodule rocksdb is our fork of rocksdb and can be compiled by yourself.

License of submodule rocksdb is same as offical rocksdb(BSD clause 3).

5.2 submodule terark-zip-rocksdb

submodule terark-zip-rocksdb implements an SSTable for submodule rocksdb, terark-zip-rocksdb license is Apache 2.0, with NOTES:

  • You can read or redistribute or use the source code under Apache 2.0 license
  • You can not compile this software by yourself, since this software depends on our proprietary core algorithms, which requires a commercial license
  • You can download the precompiled binary library of this software

6. Contact