An Ultra-Fast, Ultra-Compact, Crash Proof Data Store.

LMDB is an extraordinarily fast, memory-efficient database. With memory-mapped files, it has the read performance of a pure in-memory database while retaining the persistence of standard disk-based databases.

In other words, it runs like a bat out of hell, performing several times faster than other DB engines. No buffers needed, no memory copies generated.

With only 32KB of object code, LMDB may seem tiny. But it’s the right 32KB.

Symas Lightning Memory-Mapped Database

Features at a Glance:

  • Ordered-map interface
    • keys are always sorted; range lookups are supported
  • Fully-transactional, full ACID semantics with MVCC
  • Reader/writer transactions
    • readers don’t block writers; writers don’t block readers
  • Fully serialized writers
    • writes are always deadlock-free
  • Extremely cheap read transactions
    • can be performed using no mallocs or any other blocking calls
  • Multi-thread and multi-process concurrency supported
    • Environments may be opened by multiple processes on the same host
  • Multiple sub-databases may be created with transactions covering all sub-databases
  • Memory-mapped, allowing for zero-copy lookup and iteration
  • Maintenance-free 
    • no external process or background cleanup or compaction required
  • Crash-proof
    • no logs or crash recovery procedures required
  • No application-level caching
    • LMDB fully exploits the operating system’s buffer cache
  • 32KB of object code and 6KLOC of C
  • Licensed under the OpenLDAP Public License

Learn More

How Does it Compare to Other Key Value Stores?

Here’s a quick comparison of other embedded key value stores.
LMDB BDB LevelDB Kyoto TreeDB
ACID compliant
Nested transactions
Multiple namespaces
Sorted keys
Sorted duplicate keys
Multi-thread concurrency
Multi-process concurrency
No cache tuning: zero-config
Instantaneous crash recovery
Zero-copy reads
Zero-copy writes
Atomic hot backup

Where Can I Find Support and Documentation?

Commercial Support
Symas offers fixed-price commercial support to those using LMDB in your applications. Please contact us for additional information.

Porting and Professional Services Support
We will be happy to provide developer support or porting services to help you transition your application to LMDB. Contact us here.

Find our documentation AT THIS LINK

Where Can I Read the Published Reports?

Project presentations on LMDB have been generating excitement across the US and Europe since 2011! Click  below to read published reports.


Where Can I See the Project Benchmarks?

Click  below to see benchmarks.


Is LMDB available for outside projects?

We’re proud that LMDB has played a role in helping over 50 other projects realize their potential, including OpenLDAP, Monero, SQLite3, and FineDB.


Are there LMDB Wrappers for Other Languages?

The compact LMDB code can easily be called from over 20 other languages using their respective wrappers.




Request More Information on LMDB