Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introducing Datomic
Search
lachlanroche
October 30, 2014
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
190
iPad Multitasking in iOS9
lachlanroche
0
210
Xcode keyboard tips
lachlanroche
1
70
Xcode build script tips
lachlanroche
0
91
Introducing Xamarin
lachlanroche
0
93
Other Decks in Programming
See All in Programming
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.2k
golang-bob.pdf
iwatsukayura
0
140
Kotlinの15年とServer-Side Kotlin
n_takehata
1
170
残高管理から台帳サービスへの進化
artoy
1
220
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
4
1.1k
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
7k
最近”作らせてる” ローカルAIアプリの話
akit37
0
500
Jetpack Compose Mechanisms
skydoves
3
880
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
1.2k
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
130
Modernizing iOS Apps
seyfoyun
0
130
TanStack Vue Query と Pinia Colada から学ぶ非同期状態の型設計
aoshi
0
350
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Un-Boring Meetings
codingconduct
0
470
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
600
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
570
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
410
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
580
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
470
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Mobile First: as difficult as doing things right
swwweet
225
10k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
380
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/