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
49
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
130
iPad Multitasking in iOS9
lachlanroche
0
130
Xcode keyboard tips
lachlanroche
1
39
Xcode build script tips
lachlanroche
0
60
Introducing Xamarin
lachlanroche
0
49
Other Decks in Programming
See All in Programming
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
390
Ruby GitHub Packages
bkuhlmann
0
630
try! Swift Tokyo 初参加報告LT
hinakko2
0
220
try! Swift Tokyo 2024 参加報告 / try! Swift Tokyo 2024 Report
hironytic
0
210
GitHub Copilotのススメ
marcy731
1
200
Node.js v22 で変わること
yosuke_furukawa
PRO
9
3.5k
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
340
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.1k
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
43
19k
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
0
260
AmperとFleetを使ったAndroidアプリ
yoppie
0
180
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.2k
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
The Cult of Friendly URLs
andyhume
74
5.7k
Navigating Team Friction
lara
178
13k
Testing 201, or: Great Expectations
jmmastey
28
6.4k
How to train your dragon (web standard)
notwaldorf
73
5.2k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
2
3.4k
The Invisible Customer
myddelton
114
12k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Why Our Code Smells
bkeepers
PRO
331
56k
Web Components: a chance to create the future
zenorocha
305
41k
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/