Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introducing Datomic
Search
lachlanroche
October 30, 2014
Programming
83
0
Share
Introducing Datomic
Presented at the Brisbane NoSQL group
lachlanroche
October 30, 2014
More Decks by lachlanroche
See All by lachlanroche
Introducing the iOS Responder Chain
lachlanroche
0
170
iPad Multitasking in iOS9
lachlanroche
0
190
Xcode keyboard tips
lachlanroche
1
57
Xcode build script tips
lachlanroche
0
79
Introducing Xamarin
lachlanroche
0
73
Other Decks in Programming
See All in Programming
アーキテクチャモダナイゼーションとは何か
nwiizo
19
5.4k
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
290
NakouPAY説明用
annouim0
0
250
「Linuxサーバー構築標準教科書」を読んでみた #ツナギメオフライン.7
akase244
0
1.4k
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
450
Kingdom of the Machine
yui_knk
2
770
実践CRDT
tamadeveloper
0
590
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
740
JAWS-UG横浜 #100 祝・第100回スペシャルAWS は VPC レスの時代へ
maroon1st
0
170
From Formal Specification to Property Based Test
ohbarye
0
200
PHPer、Cloudflare に引っ越す
suguruooki
1
100
AWSコミュニティ活動は顧客のクラウド推進に効くのか / Do AWS community activities help customers adopt the cloud?
seike460
PRO
0
150
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
6
35k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
280
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
270
Everyday Curiosity
cassininazir
0
200
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
A better future with KSS
kneath
240
18k
Balancing Empowerment & Direction
lara
6
1.1k
Building the Perfect Custom Keyboard
takai
2
730
Crafting Experiences
bethany
1
120
Building Adaptive Systems
keathley
44
3k
ラッコキーワード サービス紹介資料
rakko
1
3.1M
Transcript
Intro to Datomic Brisbane NoSQL Oct 2014 @lachlanroche
Architecture • Peer library • Transactor • Storage service
Peer library • Query engine runs in your application •
Data access via Storage Service • Submits changes to and accepts updates from Transactor • API for Clojure and JVM languages • REST peers (alpha)
Transactor • Transactor is a process • Single Transactor in
a system • Processes transactions • Serialized transaction processing • ACID
Storage service • Stores immutable values • Dynamo DB, Riak,
Cassandra, Couchbase, Infinispan, SQL • Memcached support
Data model • Immutable data - facts don’t change •
Atomic data - the datom • Minimal schema • Database is a set of datoms, indexed in various ways • Database as a value
Datom • {entity, attribute, value, transaction} • Attribute definition is
the only schema • Attributes have type, name, cardinality
Time • Time is built in • Transactions are ordered
• Transactions are first class entities • Can open database at as-at a point in time, including now, or since a point in time, or for a window in time
Querying • Datalog • Implicit joins • Queries can include
arbitrary functions from your application • Queries can run on db, or application data, or a mix
Links • http://www.datomic.com/