You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Dmitri Smirnov 65324a16dc Improve test running scripts 9 years ago
arcanist_util Fix linters on non-fb machines 9 years ago
build_tools Improve test running scripts 9 years ago
coverage Fix coverage script 10 years ago
db Add max_file_opening_threads to db_bench 9 years ago
doc Remove seek compaction 11 years ago
examples RocksDB Options file format and its serialization / deserialization. 9 years ago
hdfs [Cleanup] Remove RandomRWFile 9 years ago
include/rocksdb Return MergeInProgress when fetching from transactions or WBWI with overwrite_key 9 years ago
java [RocksJava] Fix test failure of InfoLogLevelTest 9 years ago
port Re-work to support size_t max constant for 32/64-bit. 9 years ago
table Fix the bug of using freed memory introduced by recent plain table reader patch 9 years ago
third-party "make format" against last 10 commits 9 years ago
tools Fixed a tsan warning in db_stress.cc 9 years ago
util Add a missing check for deprecated options in options_helper.cc 9 years ago
utilities Return MergeInProgress when fetching from transactions or WBWI with overwrite_key 9 years ago
.arcconfig Integrate Jenkins with Phabricator 10 years ago
.clang-format A script that automatically reformat affected lines 11 years ago
.gitignore Windows Port from Microsoft 10 years ago
.travis.yml Fix clang-format on Travis 9 years ago
AUTHORS Add AUTHORS file. Fix #203 10 years ago
CMakeLists.txt RocksDB Options file format and its serialization / deserialization. 9 years ago
CONTRIBUTING.md facebook accounts are not required for CLA signers 11 years ago
DUMP_FORMAT.md First version of rocksdb_dump and rocksdb_undump. 10 years ago
HISTORY.md Add experimental DB::AddFile() to plug sst files into empty DB 9 years ago
INSTALL.md Fixed a typo in INSTALL.md 9 years ago
LICENSE Fix copyright year 11 years ago
Makefile Simplifying valgrind testing 9 years ago
PATENTS Update Patent Grant. 10 years ago
README.md Replaced "built on on earlier work" by "built on earlier work" in README.md 10 years ago
ROCKSDB_LITE.md Optimistic Transactions 10 years ago
USERS.md Add Cloudera's blog post to USERS.md 9 years ago
Vagrantfile RocksDB on FreeBSD support 10 years ago
WINDOWS_PORT.md Commit both PR and internal code review changes 10 years ago
appveyor.yml Improve CI build and build switches 9 years ago
appveyordailytests.yml Improve CI build and build switches 9 years ago
src.mk RocksDB Options file format and its serialization / deserialization. 9 years ago
thirdparty.inc Conditional use of third-party libraries 9 years ago

README.md

RocksDB: A Persistent Key-Value Store for Flash and RAM Storage

Build Status

RocksDB is developed and maintained by Facebook Database Engineering Team. It is built on earlier work on LevelDB by Sanjay Ghemawat (sanjay@google.com) 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. It has a Log-Structured-Merge-Database (LSM) design with flexible tradeoffs 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

See the github wiki for more explanation.

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/