RocksDB

The RocksDB library offers quick and easy access to a persistent key-value store. Both key and value refer to arbitrary byte arrays. Keys are arranged within the key-value store based on the user’s comparator function. The Facebook Database Engineering Team maintains the library properly. RocksDB is very commonly used in production systems at popular web-scale enterprises, including Facebook, Yahoo!, and LinkedIn. It serves as a storage engine within a larger DBMS. 

 Project Background
  • Library: RocksDB 
  • Author: Dhruba Borthakur
  • Released: May 2012
  • Type: Embedded database
  • License: Apache 2.0 or GPL 2
  • Supports: x86, x86_64, ppc64, ppc64le, aarch64, s390x
  • Language: C++
  • GitHub: /facebook/rocksdb/
  • Runs on: Windows, macOS, Linux, FreeBSD, OpenBSD, Solaris, an AIX

Applications

  • Transactions
  • Backups and snapshots
  • Column families
  • Bloom filters
  • Time to live (TTL) support
  • Universal compaction
  • Merge operators
  • Statistics collection
  • Geospatial indexing

Summary

  • A RocksDB database has a file system directory that stores all of the contents of the database.
  • It’s not an SQL database, and it has no relational data model.
  • RocksDB provides no support for SQL queries. It also doesn’t directly support secondary indexes.
  • Most of the applications use RocksDB as a library. It’s because RocksDB doesn’t provide a command-line interface or server. 
Scroll to Top