Go to file
Levi Tamasi e9c74bc474 Add wide column serialization primitives (#9915)
Summary:
The patch adds some low-level logic that can be used to serialize/deserialize
a sorted vector of wide columns to/from a simple binary searchable string
representation. Currently, there is no user-facing API; this will be implemented in
subsequent stages.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/9915

Test Plan: `make check`

Reviewed By: siying

Differential Revision: D35978076

Pulled By: ltamasi

fbshipit-source-id: 33f5f6628ec3bcd8c8beab363b1978ac047a8788
2022-06-03 20:54:48 -07:00
.circleci
.github/workflows
buckifier
build_tools
cache Add support for FastLRUCache in cache_bench (#10095) 2022-06-03 13:40:09 -07:00
cmake
coverage
db Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
db_stress_tool
docs
env Add comments/permit unchecked error to close_db_dir pull requests (#10093) 2022-06-02 21:52:35 -07:00
examples
file Fix a bug in WAL tracking (#10087) 2022-06-03 16:33:00 -07:00
fuzz
include/rocksdb Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
java Fix Java build (#10105) 2022-06-03 08:11:31 -07:00
logging
memory
memtable
microbench
monitoring
options
plugin
port
table Point-lookup returns timestamps of Delete and SingleDelete (#10056) 2022-06-03 20:00:42 -07:00
test_util
third-party
tools Fix some bugs in verify_random_db.sh (#10112) 2022-06-03 16:35:13 -07:00
trace_replay
util Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
utilities Point-lookup returns timestamps of Delete and SingleDelete (#10056) 2022-06-03 20:00:42 -07:00
.clang-format
.gitignore
.lgtm.yml
.travis.yml
.watchmanconfig
AUTHORS
CMakeLists.txt Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
COPYING
DEFAULT_OPTIONS_HISTORY.md
DUMP_FORMAT.md
HISTORY.md Fix a bug in WAL tracking (#10087) 2022-06-03 16:33:00 -07:00
INSTALL.md
LANGUAGE-BINDINGS.md
LICENSE.Apache
LICENSE.leveldb
Makefile Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
PLUGINS.md
README.md
ROCKSDB_LITE.md
TARGETS Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
USERS.md
Vagrantfile
WINDOWS_PORT.md
common.mk
crash_test.mk
issue_template.md
rocksdb.pc.in
src.mk Add wide column serialization primitives (#9915) 2022-06-03 20:54:48 -07:00
thirdparty.inc

README.md

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

CircleCI Status TravisCI Status Appveyor Build status PPC64le 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 especially suitable for storing multiple terabytes of data in a single database.

Start with example usage here: https://github.com/facebook/rocksdb/tree/main/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.

Questions and discussions are welcome on the RocksDB Developers Public Facebook group and email list on Google Groups.

License

RocksDB is dual-licensed under both the GPLv2 (found in the COPYING file in the root directory) and Apache 2.0 License (found in the LICENSE.Apache file in the root directory). You may select, at your option, one of the above-listed licenses.