2014-05-10 17:49:33 +00:00
|
|
|
## RocksDB: A Persistent Key-Value Store for Flash and RAM Storage
|
|
|
|
|
2014-05-15 17:16:58 +00:00
|
|
|
[![Build Status](https://travis-ci.org/facebook/rocksdb.svg?branch=master)](https://travis-ci.org/facebook/rocksdb)
|
2016-07-26 20:54:08 +00:00
|
|
|
[![Build status](https://ci.appveyor.com/api/projects/status/fbgfu0so3afcno78/branch/master?svg=true)](https://ci.appveyor.com/project/Facebook/rocksdb/branch/master)
|
2016-07-22 19:03:21 +00:00
|
|
|
|
2014-05-15 17:16:58 +00:00
|
|
|
|
2014-05-10 17:49:33 +00:00
|
|
|
RocksDB is developed and maintained by Facebook Database Engineering Team.
|
2014-09-17 08:16:17 +00:00
|
|
|
It is built on earlier work on LevelDB by Sanjay Ghemawat (sanjay@google.com)
|
2014-05-10 17:49:33 +00:00
|
|
|
and Jeff Dean (jeff@google.com)
|
|
|
|
|
|
|
|
This code is a library that forms the core building block for a fast
|
|
|
|
key value server, especially suited for storing data on flash drives.
|
2014-06-23 22:58:54 +00:00
|
|
|
It has a Log-Structured-Merge-Database (LSM) design with flexible tradeoffs
|
2014-05-10 17:49:33 +00:00
|
|
|
between Write-Amplification-Factor (WAF), Read-Amplification-Factor (RAF)
|
|
|
|
and Space-Amplification-Factor (SAF). It has multi-threaded compactions,
|
|
|
|
making it specially suitable for storing multiple terabytes of data in a
|
|
|
|
single database.
|
|
|
|
|
|
|
|
Start with example usage here: https://github.com/facebook/rocksdb/tree/master/examples
|
|
|
|
|
2014-06-13 21:11:10 +00:00
|
|
|
See the [github wiki](https://github.com/facebook/rocksdb/wiki) for more explanation.
|
2014-05-10 17:49:33 +00:00
|
|
|
|
|
|
|
The public interface is in `include/`. Callers should not include or
|
|
|
|
rely on the details of any other header files in this package. Those
|
|
|
|
internal APIs may be changed without warning.
|
|
|
|
|
|
|
|
Design discussions are conducted in https://www.facebook.com/groups/rocksdb.dev/
|