Go to file
Yi Wu 4a16c32ece Option to cache index/filter blocks with priority
Summary:
Add option to block based table to insert index/filter blocks to block cache with priority. Combined with LRUCache with high_pri_pool_ratio, we can reserved space for index/filter blocks, make them less likely to be evicted.

Depends on D61977.

Test Plan: See unit test.

Reviewers: lightmark, IslamAbdelRahman, sdong

Reviewed By: sdong

Subscribers: andrewkr, dhruba, march, leveldb

Differential Revision: https://reviews.facebook.net/D62241
2016-08-23 13:44:13 -07:00
arcanist_util Fixes for arcanist config (#1271) 2016-08-11 10:09:43 -07:00
build_tools Make ClockCache available with TSAN build 2016-08-23 13:40:47 -07:00
coverage Fix coverage script 2014-11-03 14:53:00 -08:00
db Option to cache index/filter blocks with priority 2016-08-23 13:44:13 -07:00
doc Lint everything 2015-11-16 12:56:21 -08:00
examples Introduce FullMergeV2 (eliminate memcpy from merge operators) 2016-07-20 09:49:03 -07:00
hdfs using java7 in runtime for hdfs env (#1072) 2016-04-12 00:08:26 -04:00
include/rocksdb Option to cache index/filter blocks with priority 2016-08-23 13:44:13 -07:00
java Add singleDelete to RocksJava (#1275) 2016-08-22 11:02:31 -07:00
memtable Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08:00
port stack_trace,cc: The current Stacktrace code does not compile for FreeBSD (#1153) 2016-06-05 17:40:43 -07:00
table Option to cache index/filter blocks with priority 2016-08-23 13:44:13 -07:00
third-party Fix clang analyzer errors 2016-07-08 17:50:51 -07:00
tools Introduce ClockCache 2016-08-19 12:28:19 -07:00
util Option to cache index/filter blocks with priority 2016-08-23 13:44:13 -07:00
utilities LRU cache mid-point insertion 2016-08-19 16:43:31 -07:00
.arcconfig Integrate Jenkins with Phabricator 2015-04-07 11:56:29 -07:00
.clang-format A script that automatically reformat affected lines 2014-01-14 12:21:24 -08:00
.gitignore Experiments on column-aware encodings 2016-08-01 14:50:19 -07:00
.travis.yml set travis open file descriptor limit 2016-08-08 22:38:04 -07:00
AUTHORS Add AUTHORS file. Fix #203 2014-09-29 10:52:18 -07:00
CMakeLists.txt LRU cache mid-point insertion 2016-08-19 16:43:31 -07:00
CONTRIBUTING.md facebook accounts are not required for CLA signers 2014-07-08 05:57:54 -04:00
DEFAULT_OPTIONS_HISTORY.md Release RocksDB 4.8.0 2016-05-02 14:38:04 -07:00
DUMP_FORMAT.md First version of rocksdb_dump and rocksdb_undump. 2015-06-19 16:24:36 -07:00
HISTORY.md Introduce ClockCache 2016-08-19 12:28:19 -07:00
INSTALL.md Simple changes to support builds for ppc64[le] consistent with X86 2016-01-19 09:08:19 -06:00
LANGUAGE-BINDINGS.md Update LANGUAGE-BINDINGS.md 2016-07-15 13:09:30 +02:00
LICENSE Updated all copyright headers to the new format. 2016-02-09 15:12:00 -08:00
Makefile LRU cache mid-point insertion 2016-08-19 16:43:31 -07:00
PATENTS Update Patent Grant. 2015-04-13 10:33:43 +01:00
README.md Appveyor badge to show master branch 2016-07-26 13:54:08 -07:00
ROCKSDB_LITE.md Optimistic Transactions 2015-05-29 14:36:35 -07:00
USERS.md Update USER.md to include more services at Facebook. 2016-07-06 14:27:08 -07:00
Vagrantfile RocksDB on FreeBSD support 2015-02-26 15:19:17 -08:00
WINDOWS_PORT.md Commit both PR and internal code review changes 2015-07-07 16:58:20 -07:00
appveyor.yml fix vs generator (#1269) 2016-08-10 09:08:13 -07:00
src.mk Add Status to RocksDBException so that meaningful function result Status from the C++ API isn't lost (#1273) 2016-08-22 11:01:42 -07:00
thirdparty.inc Introduce XPRESS compresssion on Windows. (#1081) 2016-04-19 22:54:24 -07:00

README.md

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

Build Status 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/