awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
facebook avatar

facebook/rocksdb

0
View on GitHub↗
31,767 stars·6,849 forks·C++·GPL-2.0·15 viewsrocksdb.org↗

Rocksdb

RocksDB is a high-performance, embeddable persistent key-value library and storage engine based on Log-Structured Merge-trees. It is designed to provide durable storage for large-scale datasets, integrating directly into applications to manage data on flash and RAM-based hardware.

The engine is distinguished by its focus on minimizing read and write amplification through multi-threaded compaction and custom memory allocators. It features specialized optimizations for flash storage, including support for zoned block devices, and provides the ability to extend store behavior via external plugins.

Its broad capability surface includes atomic transactions, column family partitioning for logical keyspace division, and data-at-rest encryption. The system also supports secondary indexing, time-to-live data expiration, and integration with distributed filesystems.

Observability is provided through internal statistics tracking, component performance benchmarking, and crash recovery simulation.

Features

  • Key-Value - Implements a high-performance storage engine that persists data as key-value pairs optimized for flash and RAM.
  • Log-Structured Merge-Trees - Uses a Log-Structured Merge-Tree architecture to buffer writes in memory and flush them to sorted immutable files.
  • Column Family Management - Organizes data into multiple logical partitions with independent settings and compaction strategies.
  • Compaction Strategies - Provides configurable compaction strategies to balance write amplification and read efficiency in the LSM-tree.
  • Data Partitioning - Divides the keyspace into independent namespaces with separate memtables and compaction settings for logical data organization.
  • Atomic Transactions - Ensures consistency across multiple operations using optimistic and pessimistic atomic transaction patterns.
  • Sorted String Tables - Persists data in immutable sorted files containing indices and bloom filters for fast point lookups and range scans.
  • High-Performance Databases - Engineered for extreme write throughput and low-latency retrieval using multi-threaded compaction.
  • Key-Value Persistence Stores - Provides a durable data store for large-scale datasets with atomic transactions and column families.
  • Key-Value Stores - Serves as a persistent, embeddable key-value store integrated directly into applications.
  • Large-Scale Dataset Management - Manages multi-terabyte datasets efficiently using multi-threaded compactions.
  • Tiered Compaction Strategies - Merges smaller sorted files into larger ones across multiple levels to reclaim space and minimize write amplification.
  • Write-Ahead Logging - Records every mutation to a sequential on-disk log to ensure data durability and recovery after crashes.
  • Sorted Memory Buffers - Buffers incoming writes in a sorted memory structure (MemTable) before flushing them as immutable sorted string tables.
  • Point-In-Time Snapshots - Generates consistent point-in-time snapshots of the database for backup or analysis purposes.
  • Custom Grouped Operations - Defines custom merge operators to aggregate multiple values for a single key during reads or compaction.
  • Flash Storage Managers - Manages data placement and write patterns to maximize SSD and zoned storage efficiency.
  • Data Caching - Improves read throughput by storing frequently accessed data on local disks or SSDs.
  • Data Compression Algorithms - Reduces the storage footprint of keys and values using compression algorithms to balance CPU and disk usage.
  • Caching and Performance - Reduces latency and improves read throughput by caching frequently accessed data on local hardware.
  • Compaction Filters - Applies custom logic to drop or transform keys and values while the database reorganizes internal files.
  • Expiration Policies - Automatically removes old data based on a configurable time-to-live (TTL) threshold.
  • Distributed System Metadata - Provides a durable and efficient storage layer for tracking metadata in large-scale distributed systems.
  • In-Memory Caches - Implements a memory cache to store frequently accessed data and index blocks, reducing disk I/O latency.
  • Key-Value Store Iterators - Provides forward and backward iterators for traversing sorted key-value pairs with snapshot isolation.
  • Range Deletions - Removes all keys within a specified range using tombstone markers that are physically purged during compaction.
  • Local State Stores - Enables fast access for stream processing by storing application state on local SSDs.
  • Secondary Indexes - Provides secondary indexing capabilities to enable efficient lookups on columns other than the primary key.
  • Storage Amplification Tuning - Allows tuning of write, read, and space amplification to optimize performance for specific hardware and workloads.
  • Storage Integrity Validation - Verifies checksums for files and memtables to detect and report storage corruption.
  • System Metadata Tracking - Tracks filesystem and object metadata for large-scale distributed systems across billions of entries.
  • Plugin-Extensible Runtimes - Allows injecting custom logic via external plugins to modify internal storage engine operations.
  • Custom Memory Allocators - Utilizes custom memory allocators to optimize heap usage and minimize resource contention during high-throughput operations.
  • Zoned Block Device Support - Optimizes data placement for zoned storage devices to improve write efficiency and device lifespan.
  • Language Bindings - Provides third-party bindings to connect the storage engine to various programming languages across different application stacks.
  • Internal Telemetry Monitors - Monitors internal operational state including read/write latency, cache hit rates, and compaction times.
  • Database Engines - Embeddable persistent key-value store for fast storage.
  • Database Systems - Embedded key-value store optimized for fast storage.
  • Databases - High-performance embedded key-value store.
  • Databases and Data - High-performance embedded key-value store.

Star history

Star history chart for facebook/rocksdbStar history chart for facebook/rocksdb

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Rocksdb

Similar open-source projects, ranked by how many features they share with Rocksdb.
  • google/leveldbgoogle avatar

    google/leveldb

    39,152View on GitHub↗

    LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses a log-structured merge-tree architecture to map byte arrays to values, running directly within a process to provide storage without the need for a separate server process. The system is distinguished by its use of custom comparison functions to define key ordering, enabling efficient range scans and sequenced lookups. It ensures data reliability through atomic batch execution, consistent snapshot generation, and log-based recovery after failures. The engine covers broad capab

    C++
    View on GitHub↗39,152
  • dgraph-io/badgerdgraph-io avatar

    dgraph-io/badger

    15,666View on GitHub↗

    Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values. It is a persistent database that utilizes a tiered LSM tree storage model to optimize disk storage and retrieval efficiency. The system features an ACID transaction engine that ensures data integrity through serializable snapshot isolation and multi-version concurrency control. It also provides an encrypted key-value store with data-at-rest encryption and a managed encrypted key registry to secure stored information. The engine covers a broad set of capabilities including hig

    Godatabasedocument-databasego
    View on GitHub↗15,666
  • hdt3213/godisHDT3213 avatar

    HDT3213/godis

    3,836View on GitHub↗

    Godis is a Redis-compatible in-memory database and distributed key-value store. It functions as a replicated data store and distributed message broker, implementing the Redis protocol to manage complex data structures in memory. The system provides a geospatial indexing engine for proximity-based queries and distance calculations. It ensures high availability and data durability through master-slave replication and write-ahead logging. The project covers a wide range of capabilities including the management of strings, hash maps, lists, and sorted sets. It supports distributed data clusterin

    Goclustergogodis
    View on GitHub↗3,836
  • syndtr/goleveldbsyndtr avatar

    syndtr/goleveldb

    6,319View on GitHub↗

    goleveldb is an embedded key-value storage database for Go. It provides local data persistence and indexing, allowing applications to store and retrieve information using unique keys without requiring a separate server. The database organizes data using a log-structured merge-tree and persistent indexing in lexicographical order. This structure supports efficient range scans and prefix-based searches. The system includes capabilities for atomic batch writes to ensure data consistency and avoid partial updates. Performance is managed through write-ahead logging, memory-based buffering, and bl

    Godatabasegoleveldb
    View on GitHub↗6,319
See all 30 alternatives to Rocksdb→

Frequently asked questions

What does facebook/rocksdb do?

RocksDB is a high-performance, embeddable persistent key-value library and storage engine based on Log-Structured Merge-trees. It is designed to provide durable storage for large-scale datasets, integrating directly into applications to manage data on flash and RAM-based hardware.

What are the main features of facebook/rocksdb?

The main features of facebook/rocksdb are: Key-Value, Log-Structured Merge-Trees, Column Family Management, Compaction Strategies, Data Partitioning, Atomic Transactions, Sorted String Tables, High-Performance Databases.

What are some open-source alternatives to facebook/rocksdb?

Open-source alternatives to facebook/rocksdb include: google/leveldb — LevelDB is an embedded database library and persistent storage engine that provides a sorted key-value store. It uses… dgraph-io/badger — Badger is an embeddable key-value store written in Go that provides persistent data storage for byte keys and values.… hdt3213/godis — Godis is a Redis-compatible in-memory database and distributed key-value store. It functions as a replicated data… syndtr/goleveldb — goleveldb is an embedded key-value storage database for Go. It provides local data persistence and indexing, allowing… etcd-io/bbolt — bbolt is an ACID-compliant embedded key-value store for Go applications. It persists all data in a single… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL…