DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

OrbitDB


Conflict-free Replicated Data Types (CRDTs) are data structures whose network replicas can be updated concurrently and independently without replicas coordinating, with the guarantee that all inconsistencies can be resolved. OrbitDB utilizes CRDTs for conflict-free database merges and a decentralized peer-to-peer protocol for storage.[06][07]

Source Code
https://github.com/orbitdb/orbitdb[02]
Developer
Country of Origin
DE
Start Year
2015 [15]
Project Type
Open Source
Written in
JavaScript
Supported Languages
JavaScript
Operating Systems
Linux, macOS
License
MIT License
Twitter
@orbit_db[05]

Database Entry

OrbitDB


Conflict-free Replicated Data Types (CRDTs) are data structures whose network replicas can be updated concurrently and independently without replicas coordinating, with the guarantee that all inconsistencies can be resolved. OrbitDB utilizes CRDTs for conflict-free database merges and a decentralized peer-to-peer protocol for storage.[06][07]

History[08][09][07]


OrbitDB is derived from the Orbit chat application which is built on the InterPlanetary File System (IPFS) protocol. The IPFS protocol functions like a distributed CDN. It was developed by Samuli Pöyhtäri in Berlin and funded by Protocol Labs. Samuli then founded Haja Networks. The OrbitDB project is now fully under Haja Networks.

Checkpoints


Checkpoints are not explicitly supported. However, information is persisted on the IPFS network.

Concurrency Control


Data Model


Foreign Keys


Indexes[10]


Indexes are Javascript dictionaries.

Isolation Levels


Joins


Logging


Query Compilation


Query Execution


OrbitDB is effectively a key-value store.

Query Interface[11][12]


OrbitDB has native Javascript bindings and endorses community Typescript bindings.

Storage Model[13][14]


All storage is backed by conflict-free replicated data structures. The storage model can be extended by the user.

Stored Procedures


System Architecture


Views


Citations

15 sources
  1. OrbitDB - Home orbitdb.org
  2. GitHub - orbitdb/orbitdb: Peer-to-Peer Databases for the Decentralized Web · GitHub github.com
  3. GitHub - orbitdb-archive/field-manual: The Offical User's Guide to OrbitDB · GitHub github.com
  4. OrbitDB’s Substack | Substack substack.com
  5. https://twitter.com/orbit_db twitter.com
  6. Here's a quick overview of how OrbitDB works. A "database" in OrbitDb is a singl... | Hacker News ycombinator.com Dead — Check Archive
  7. https://outlierventures.io/portfolio/haja_networks/ outlierventures.io Dead — Check Archive
  8. https://news.ycombinator.com/item?id=1272282 ycombinator.com Dead — Check Archive
  9. https://news.ycombinator.com/item?id=12719828 ycombinator.com Dead — Check Archive
  10. orbit-db-docstore/src/DocumentIndex.js at main · orbitdb-archive/orbit-db-docstore · GitHub github.com
  11. https://github.com/orbitdb/orbit-db/blob/master/API.md github.com Dead — Check Archive
  12. GitHub - orbitdb/orbitdb: Peer-to-Peer Databases for the Decentralized Web · GitHub github.com
  13. GitHub - orbitdb-archive/ipfs-log: Append-only log CRDT on IPFS · GitHub github.com
  14. GitHub - orbitdb-archive/orbit-db-store: Base class for orbit-db data stores · GitHub github.com
  15. Initial version github.com
Revision #16