Difference between revisions of "RocksDB"
Jump to navigation
Jump to search
↑ https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ
(13 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | [[wikipedia:RocksDB]] is a high performance embedded database/library for [[key-value]] [[database]] released in [[2012]] and written in [[C++]]. Database has to be open by a [[single]] [[process]] for writting and multiprocessor for reading.<ref>https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ</ref>. A single DB can be configured to store its data in multiple directories. | |
− | + | It is based on a log-structured merge-tree ([[LSM]] tree) data structure | |
− | [[wikipedia:RocksDB]] is a high performance embedded database/library for [[key-value]] [[database]] released in 2012. Database has to be open by a [[single]] [[process]] for writting and multiprocessor for reading.<ref>https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ</ref>. A single DB can be configured to store its data in multiple directories. | ||
RocksDB execute periodic compactions which reads from one or more <code>[[SST file|SST]]</code> files, perform merge-sort like operation, generate new SST files, and delete the old SST files it inputs. | RocksDB execute periodic compactions which reads from one or more <code>[[SST file|SST]]</code> files, perform merge-sort like operation, generate new SST files, and delete the old SST files it inputs. | ||
RocksDB databases include support for field compression using [[Zstandard]] | RocksDB databases include support for field compression using [[Zstandard]] | ||
+ | |||
+ | Maximum recommended sizes for [[key]] and value are 8MB and 3GB respectively. | ||
== Installation == | == Installation == | ||
* [[macOS]]: <code>[[brew]] install rocksdb</code> | * [[macOS]]: <code>[[brew]] install rocksdb</code> | ||
− | * Binaries: rocksdb_sanity_test rocksdb_stress rocksdb_undump rocksdb_sst_dump rocksdb_ldb rocksdb_repl_stress rocksdb_dump rocksdb_write_stress | + | * Linux: <code>mariadb-plugin-[[rocksdb]]</code> package |
+ | * Binaries: | ||
+ | ** <code>[[rocksdb_sanity_test]]</code> | ||
+ | ** <code>[[rocksdb_stress]]</code> | ||
+ | ** <code>[[rocksdb_undump]]</code> | ||
+ | ** <code>[[rocksdb_sst_dump]]</code> | ||
+ | ** <code>[[rocksdb_ldb]]</code> | ||
+ | ** <code>[[rocksdb_repl_stress]]</code> | ||
+ | ** <code>[[rocksdb_dump]]</code> | ||
+ | ** <code>[[rocksdb_write_stress]]</code> | ||
Line 15: | Line 25: | ||
== Activities == | == Activities == | ||
− | #Read RocksDB source: https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ | + | # Read RocksDB source: https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ |
+ | # Review [[MyRocks]]: [[MySQL]]/[[MariaDB]] storage engine that integrates with RocksDB. | ||
+ | |||
+ | == Related == | ||
+ | * [[Parity]] | ||
+ | * [[LevelDB]] | ||
+ | * [[PebbleDB]] | ||
+ | [[agd start]] options: --db_backend string database backend: [[goleveldb]] | [[cleveldb]] | [[boltdb]] | rocksdb | [[badgerdb]] (default "goleveldb") | ||
+ | [[.sst]] | ||
==See also== | ==See also== |
Latest revision as of 16:41, 18 August 2024
wikipedia:RocksDB is a high performance embedded database/library for key-value database released in 2012 and written in C++. Database has to be open by a single process for writting and multiprocessor for reading.[1]. A single DB can be configured to store its data in multiple directories. It is based on a log-structured merge-tree (LSM tree) data structure
RocksDB execute periodic compactions which reads from one or more SST
files, perform merge-sort like operation, generate new SST files, and delete the old SST files it inputs.
RocksDB databases include support for field compression using Zstandard
Maximum recommended sizes for key and value are 8MB and 3GB respectively.
Contents
Installation[edit]
Related binaries: sst_dump
and SstFileReader
.
Activities[edit]
- Read RocksDB source: https://github.com/facebook/rocksdb/wiki/RocksDB-FAQ
- Review MyRocks: MySQL/MariaDB storage engine that integrates with RocksDB.
Related[edit]
agd start options: --db_backend string database backend: goleveldb | cleveldb | boltdb | rocksdb | badgerdb (default "goleveldb") .sst
See also[edit]
- Key-value databases: Berkeley DB, Redis,
etcd
, leveldb, RocksDB (MyRocks), Infinispan, Amazon DynamoDB, Apache Zookeeper, LevelDB, RocksDB, Pebble - Databases: Database management, SQL, NoSQL, Wide column, PostgreSQL, MariaDB, MySQL, Derby DB, MongoDB, Cassandra, SQLite, HSQL2, H2, RocksDB, Microsoft SQL Server, DB2, Oracle Database, Memcached, Berkeley DB, Collation, SingleStore, Amazon Aurora, Graph database, Amazon DynamoDB, PrestoDB, Cache hit ratio, ACID, WAL, ARIES, DBMS, OLTP, OLAP, Database Schema, CockroachDB, Tables, Views, Apache Druid, RDMS
- SSD
- Homepage: https://rocksdb.org/
Advertising: