Datomic
summary
Datomic is a JVM database that models the store as an database-as-value: an append‑only accretion of timestamped facts (an entity-attribute-value-transaction datum) so queries see stable snapshots and transactions are functions DB→DB. Architecture splits a single transactor (serial durable log, conditional puts) from many peer query engines that maintain in‑memory live indexes and merge immutable on‑disk segments (BigTable‑style); storage is storage-agnostic (DynamoDB, RDBMS, etc.). It embeds Datalog queries, supports transaction functions and time‑travel, and is implemented in Clojure on the JVM.
AI-written summary · about
chapters (30)
- 0:00What is Datomic?
- 1:13Complexity
- 4:03Basis
- 5:29Update
- 6:41Manifestations
- 8:27The Choices
- 9:56Coming to Terms
- 12:43Implementing Values
- 13:25Place Model
- 16:51Epochal Time Model
- 17:43Database State
- 20:13Accretion
- 21:51Facts
- 26:12Deconstruction
- 30:19Transactions and Indexing
- 30:53Perception
- 31:38Datomic Architecture
- 35:32Memory Index
- 37:01What's in a DB Value?
- 38:11Index Storage
- 40:01Process Expansion
- 40:19Transactor
- 41:18Peers
- 41:46Declarative Programming
- 42:53Datomic Datalog
- 45:12JVM Integration
- 46:26JVM Issues
- 48:03DB Simplicity
- 48:55Other Benefits
- 50:49The Database as a Value
related talks
40mDatomic: The Most Innovative DB You've Never Heard Of
46mThe Datomic Architecture and Data Model
40mThe power of Datomic database
37m11 insights after 11 years with the functional database Datomic
52mEnhancing Datalog for Datomic
37m11 insights after 11 years with the functional database Datomic
28mDatomic at Nubank, Simplicity Scaled
42mYet & Datomic Immutable Facts Mutated Our Stack
