EVERYTHING XIAOMI
Get listed

bbolt

bbolt is a maintained fork of Bolt, providing Go applications with an embedded key-value store instead of a full database server.

Place
#13 of 30
Score
6.7
bbolt's website

What bbolt is

bbolt is a maintained fork of Bolt, providing Go applications with an embedded key-value store instead of a full database server. A database occupies a single file and represents a consistent snapshot. Data is arranged in buckets, including nested buckets, with keys stored in byte-sorted order. bbolt supports serializable ACID transactions, allowing one read-write transaction at a time alongside multiple concurrent read-only transactions. A read-only transaction can produce a consistent hot backup without blocking other reads and writes. The database exposes operation statistics for logging or sending to a service such as statsd. The project identifies read-intensive workloads and range scans as suitable uses, while warning that random writes can be slow. A database file’s exclusive write lock prevents multiple processes from sharing it for writing, though read-only mode allows multiple processes to read. The project documents gomobile bindings for iOS and Android, as well as Windows, macOS, and Linux support. It is open source under the MIT license, with no paid support plan listed.

Good

  • Stores the database in a single file
  • Supports serializable ACID transactions
  • Read-only backups do not block database activity
  • Supports nested buckets and byte-sorted keys
  • Free under the MIT license

Watch out

  • Only one read-write transaction at a time
  • Random writes can be slow
  • Multiple processes cannot share the file for writing
  • Deleting data does not reclaim file space

Who it suits

bbolt suits Go developers building applications that need an embedded key-value database, particularly for read-intensive workloads or range scans. It is not intended for applications that need multiple processes writing to the same database file.

Verdict

bbolt offers an embedded, single-file store with transactions and hot backups for read-oriented workloads. Its write-lock and file-space behavior are important constraints to weigh against the application’s needs.

Plans and prices

From bbolt's own pricing page, checked 4 Oct 2026.

All about pricing
PlanPriceWhat it gives you
bboltFreeOpen-source Go library and command-line utility · no paid plans listed

The facts

Each one read from bbolt's own pages, with the date it was checked.

What it does

Access limitation
A database file uses an exclusive write lock and cannot be shared by multiple processes; read-only mode permits multiple processes to read it.checked 4 Oct 2026
Backup
A read-only transaction can write a consistent hot backup without blocking other database reads and writes.checked 4 Oct 2026
Data-file limitation
Deleting large amounts of data does not reclaim file space; freed pages remain in the file for later reuse.checked 4 Oct 2026
Data organization
It organizes key/value pairs into buckets, supports nested buckets, and stores bucket keys in byte-sorted order.checked 4 Oct 2026
Install
The README instructs Go developers to install the library with go get go.etcd.io/bbolt@latest and the CLI with go install go.etcd.io/bbolt/cmd/bbolt@latest.checked 4 Oct 2026
Integrations
The README lists projects using Bolt, including Consul, Containerd, InfluxDB, Prometheus Annotation Server, and NATS Streaming.checked 4 Oct 2026
License and support
The repository identifies an MIT license and directs users to its issues and discussions for project interaction; it does not list a paid support plan.checked 4 Oct 2026
Mobile support
The project documents using gomobile bindings to run database logic on iOS and Android.checked 4 Oct 2026
Monitoring
The database exposes operation statistics that can be logged or sent to a service such as statsd.checked 4 Oct 2026
Purpose
bbolt is a maintained fork of Bolt, a pure Go embedded key/value store for applications that do not need a full database server.checked 4 Oct 2026
Scale and memory
The project says databases can exceed physical RAM if the memory map fits the process virtual address space, and notes this may be problematic on 32-bit systems.checked 4 Oct 2026
Storage
A database is stored as a single file on disk and represents a consistent snapshot of the data.checked 4 Oct 2026
Transactions
bbolt supports serializable ACID transactions with one read-write transaction at a time and multiple concurrent read-only transactions.checked 4 Oct 2026
Workload fit
The project describes bbolt as suitable for read-intensive workloads and range scans, while warning that random writes can be slow.checked 4 Oct 2026

Alternatives to bbolt

All alternatives
  1. 1Chroma logo

    Chroma

    Free planOpen sourceAndroidiOSWebAPI
    8.6From $250 a month
  2. 2SQLite logo

    SQLite

    Free planOpen sourceAndroidiOSWebAPI
    8.6Free plan
  3. 3HSQLDB logo

    HSQLDB

    Free planOpen sourceAPILinuxmacOSSelf-hosted
    8.1From $100 a year
  4. 4RxDB logo

    RxDB

    Free planAndroidiOSWebAPI
    7.5From $99 a month
  5. 5

    LadybugDB

    Free planAndroidiOSWebAPI
    7.4Free plan
  6. 6

    RocksDB

    Free planiOSAPILinuxmacOS
    7.0Free plan