Hibari
discontinuedby Gemini Mobile Technologies / Hibari developers · since 2010
Erlang distributed ordered key-value store using chain replication for strong consistency.
discontinued. Unmaintained: last release 0.1.11 (April 2015) and no commits since 2017.
Overview
Hibari is a distributed, ordered key-value store written in Erlang, open-sourced in 2010 by Gemini Mobile Technologies after running a multi-million-user webmail service in Japan. Keys are split into chains by prefix and kept in lexicographic order within each chain, and every chain is replicated with chain replication, so reads and writes stay strongly consistent while a failed brick is repaired automatically. It adds compare-and-swap via key timestamps, micro-transactions over several keys in the same chain, per-key metadata and TTL, and performs particularly well for reads and values larger than 200 KB. The native Erlang client was the only production-grade one. The last release, 0.1.11, came out in April 2015, and the repository has been idle since 2017.
Strengths & trade-offs
Strengths
- +Strong consistency from chain replication
- +Ordered keys within chains enable prefix range scans
- +Automatic repair after a brick fails
- +Good performance for reads and large values
Trade-offs
- −Unmaintained since 2017; targets old Erlang/OTP releases
- −Only the Erlang client is production quality
- −Multi-key transactions limited to keys in one chain
Great for
- +Studying chain replication in practice
- +Legacy Erlang systems already running Hibari
Think twice for
- −New deployments
- −Non-Erlang applications
Capabilities
Native or official first-party support · 3 of 25 tracked
Scale & consistency
- Comfortable data size
- Large · ≤ 1 PB
- Horizontal scaling
- Native
- Multi-region
- No
- Transactions
- Limited ACID
- Consistency
- Strong
- Schema
- Schemaless
- Architecture
- Distributed
- Query languages
- Erlang client API
Chains are distributed across bricks; the project cites production clusters spanning about 100 servers.
Deployment
Ecosystem
Alternatives to Hibari
Erlang-based, Dynamo-style key-value store built to stay up through ugly failures.
hibari vs riak-kv →Apple's ordered, strictly serializable distributed key-value store, built to have layers on top.
hibari vs foundationdb →CNCF-graduated, Raft-replicated transactional key-value store in Rust; the storage layer of TiDB.
hibari vs tikv →Raft-based, strongly consistent key-value store that holds Kubernetes' cluster state.
hibari vs etcd →Masterless wide-column database built for always-on writes across data centers.
hibari vs apache-cassandra →Apple's iCloud record store for apps: private per-user data, a public database and built-in sync.
hibari vs apple-cloudkit →Hibari FAQ
What is Hibari?
Hibari is a key-value database by Gemini Mobile Technologies / Hibari developers, first released in 2010. Hibari is a distributed, ordered key-value store written in Erlang, open-sourced in 2010 by Gemini Mobile Technologies after running a multi-million-user webmail service in Japan. Keys are split into chains by prefix and kept in lexicographic order within each chain, and every chain is replicated with chain replication, so reads and writes stay strongly consistent while a failed brick is repaired automatically. It adds compare-and-swap via key timestamps, micro-transactions over several keys in the same chain, per-key metadata and TTL, and performs particularly well for reads and values larger than 200 KB. The native Erlang client was the only production-grade one. The last release, 0.1.11, came out in April 2015, and the repository has been idle since 2017.
Is Hibari open source?
Yes. Hibari is open source. License: Apache License 2.0.
Does Hibari support ACID transactions?
Partly. Hibari offers limited ACID guarantees (for example, single-record or single-partition transactions), with strong consistency.
Does Hibari scale horizontally?
Hibari scales horizontally out of the box, with built-in sharding or partitioning. It is comfortable at large scale (≤ 1 PB).
How can I run Hibari?
You can self-host it.
What is Hibari best for?
Hibari is a strong fit for studying chain replication in practice and legacy Erlang systems already running Hibari. Think twice for new deployments.
What are the best alternatives to Hibari?
Common alternatives to Hibari include Riak KV, FoundationDB, TiKV, etcd and Apache Cassandra. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
Is Hibari still maintained?
Hibari is discontinued. Unmaintained: last release 0.1.11 (April 2015) and no commits since 2017.
How popular is Hibari?
Hibari ranks #623 of 844 databases on the WhichDB Score (0.6/100), and #113 among key-value databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.