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
LMDB avatar

LMDB/lmdb

0
View on GitHub↗
2,907 stars·625 forks·C·26 viewswww.openldap.org/software/repo.html↗

Lmdb

LMDB is an embedded key-value storage engine that provides ACID-compliant data persistence. It is a memory-mapped database that utilizes B+ trees to store key-value pairs, ensuring atomicity, consistency, isolation, and durability.

The engine maps files directly into the virtual address space to minimize data copying and system calls. This approach enables high-performance local caching and low-latency data access, specifically optimizing for read-heavy database workflows.

The system implements a transactional model with copy-on-write versioning and single-writer multi-reader locking. These mechanisms allow multiple concurrent read-only transactions to access consistent snapshots without locks while restricting modifications to a single writer.

Features

  • Memory-Mapped Storage - Maps database files directly into the virtual address space to minimize data copying and system calls.
  • Copy-on-Write Transaction Systems - Uses copy-on-write isolation to provide consistent snapshots and atomic commit or rollback of changes.
  • Memory-Mapped File Access - Directly maps disk-based files into the process address space for instant loading and high-performance data access.
  • Single-Writer Multi-Reader Locking - Implements a concurrency model allowing multiple concurrent readers while restricting write access to a single transaction.
  • ACID-Compliant - Ensures atomic, consistent, isolated, and durable operations with crash safety and rollback support.
  • B-Tree - Uses B+ tree structures to optimize disk-based range queries and lookups.
  • B+ Tree Indexing - Implements B+ trees to store data only in leaf nodes for efficient range queries and reduced disk I/O.
  • Embedded Key-Value Stores - Integrates a fast, lightweight key-value database directly into applications without requiring a separate server process.
  • OS Page Cache Integration - Utilizes the system page cache to manage data persistence and retrieval without a separate application-level cache.
  • Local State Caches - Provides high-performance local persistence for frequent data points with minimal overhead.
  • Read-Optimized Workflows - Optimizes the storage engine for massive volumes of read operations to maximize throughput.
  • Cross-Process Pointer Stability - Stores data using memory addresses that remain valid across processes via stable memory mapping.
  • Databases - Ultra-fast and compact key-value embedded data store.
  • Cryptography - Ultra-fast and compact key-value embedded data store.

Star history

Star history chart for lmdb/lmdbStar history chart for lmdb/lmdb

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

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

Projects sharing features with Lmdb

These projects share indexed features with Lmdb. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • boltdb/boltboltdb avatar

    boltdb/bolt

    14,642View on GitHub↗

    Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that organizes data in B+trees on disk to provide efficient sorted key retrieval and range scans. The system uses a memory-mapped model to map the database file directly into the process address space for fast random-access reads. The project distinguishes itself through a multi-version concurrency control architecture that allows multiple simultaneous readers to access a consistent snapshot of data without blocking a writer. It employs a single-writer multi-reader locking model and uses a

    Go
    View on GitHub↗14,642
  • tidwall/buntdbtidwall avatar

    tidwall/buntdb

    4,834View on GitHub↗

    BuntDB is an embedded key-value store for Go applications, providing in-memory storage with optional disk persistence. It structures data using a B-tree for ordered key-value access and an R-tree for spatial indexing, allowing both range scans and geometric intersection queries. Support for indexing on nested JSON document fields enables efficient lookups by values within JSON objects, and per-key time-to-live (TTL) expiration automatically removes stale entries. The store uses copy-on-write transaction isolation, ensuring each transaction sees a consistent snapshot and changes are applied at

    Godatabasegeospatialgolang
    View on GitHub↗4,834
  • cberner/redbcberner avatar

    cberner/redb

    4,248View on GitHub↗

    redb is an embedded key-value store and ACID-compliant storage engine. It functions as a persistent storage system for saving and retrieving data as key-value pairs within a tree structure. The engine is built as an MVCC transactional database, utilizing multi-version concurrency control to manage simultaneous reads and writes without blocking. It employs a single-writer multi-reader model to ensure data consistency while allowing multiple threads to access the store. The system provides persistent state management and atomic transaction management to prevent data corruption during crashes.

    Rustrust
    View on GitHub↗4,248
  • nutsdb/nutsdbnutsdb avatar

    nutsdb/nutsdb

    3,554View on GitHub↗

    NutsDB is an ACID-compliant, embedded transactional storage engine that functions as both a disk-backed key-value store and an in-memory data structure store. It provides atomic and serializable transactions with commit and rollback capabilities to ensure strict data consistency for applications requiring a lightweight persistence layer. The engine distinguishes itself by supporting a variety of complex data types, including lists, sets, and sorted sets, alongside standard byte-slice storage. It implements a transactional storage model featuring hot backups and a compaction algorithm to maint

    Godata-structuresdatabasego
    View on GitHub↗3,554
Compare all 30 related projects→

Frequently asked questions

What does lmdb/lmdb do?

LMDB is an embedded key-value storage engine that provides ACID-compliant data persistence. It is a memory-mapped database that utilizes B+ trees to store key-value pairs, ensuring atomicity, consistency, isolation, and durability.

What are the main features of lmdb/lmdb?

The main features of lmdb/lmdb are: Memory-Mapped Storage, Copy-on-Write Transaction Systems, Memory-Mapped File Access, Single-Writer Multi-Reader Locking, ACID-Compliant, B-Tree, B+ Tree Indexing, Embedded Key-Value Stores.

Which projects share features with lmdb/lmdb?

Projects with overlapping indexed features include: boltdb/bolt — Bolt is a single-file embedded key-value store for Go applications. It is an ACID transactional database that… tidwall/buntdb — BuntDB is an embedded key-value store for Go applications, providing in-memory storage with optional disk persistence.… cberner/redb — redb is an embedded key-value store and ACID-compliant storage engine. It functions as a persistent storage system for… nutsdb/nutsdb — NutsDB is an ACID-compliant, embedded transactional storage engine that functions as both a disk-backed key-value… etcd-io/bbolt — bbolt is an ACID-compliant embedded key-value store for Go applications. It persists all data in a single… jankotek/mapdb — MapDB is an embedded database engine and disk-backed collection library that stores Java collections on disk or…