BoltDB

BoltDB is an embedded key/value database written in Go. It supports fully serializable transactions, ACID semantics, and lock-free MVCC with multiple readers and a single writer. BoltDB uses a single-level, zero-copy, B+tree data storage, which allows fast read access and does not require recovery in the event of a system crash.

History

BoltDB initially started by Ben Johnson as a port of LMDB to Go. The project was abandoned by its author in 2017.

Data Model

Key/Value

Concurrency Control

Timestamp Ordering

BoltDB allows only one read-write transaction at a time.

System Architecture

Embedded

Query Interface

Custom API

Storage Organization

Heaps

Indexes

B+Tree