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
0
56
Introducing Datomic
Presented at the Brisbane NoSQL group
lachlanroche
October 30, 2014
Tweet
Share
More Decks by lachlanroche
See All by lachlanroche
Introducing the iOS Responder Chain
lachlanroche
0
160
iPad Multitasking in iOS9
lachlanroche
0
170
Xcode keyboard tips
lachlanroche
1
51
Xcode build script tips
lachlanroche
0
72
Introducing Xamarin
lachlanroche
0
61
Other Decks in Programming
See All in Programming
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
980
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.6k
AkarengaLT vol.38
hashimoto_kei
1
130
Cursorハンズオン実践!
eltociear
2
1.2k
iOSでSVG画像を扱う
kishikawakatsumi
0
170
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.6k
コード生成なしでモック処理を実現!ovechkin-dm/mockioで学ぶメタプログラミング
qualiarts
0
270
Devoxx BE - Local Development in the AI Era
kdubois
0
140
AIと人間の共創開発!OSSで試行錯誤した開発スタイル
mae616
2
820
Six and a half ridiculous things to do with Quarkus
hollycummins
0
220
CSC509 Lecture 07
javiergs
PRO
0
250
ALL CODE BASE ARE BELONG TO STUDY
uzulla
28
6.7k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
890
Designing for Performance
lara
610
69k
Code Review Best Practice
trishagee
72
19k
Typedesign – Prime Four
hannesfritz
42
2.8k
How STYLIGHT went responsive
nonsquared
100
5.9k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Balancing Empowerment & Direction
lara
5
700
It's Worth the Effort
3n
187
28k
Building an army of robots
kneath
305
46k
Six Lessons from altMBA
skipperchong
29
4k
A designer walks into a library…
pauljervisheath
209
24k
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/