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
Polyglot Persistence
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ole-Martin Mørk
March 25, 2015
Technology
0
100
Polyglot Persistence
A presentation to nosql and polyglot persistence
Ole-Martin Mørk
March 25, 2015
Tweet
Share
More Decks by Ole-Martin Mørk
See All by Ole-Martin Mørk
Snakk med din applikasjon!
olemartin
0
58
Facebook Graph Search implemented with Neo4j
olemartin
0
240
Patterns for Key-Value stores
olemartin
1
50
Other Decks in Technology
See All in Technology
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.3k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
0
330
なぜ今、コスト最適化(倹約)が必要なのか? ~AWSでのコスト最適化の進め方「目的編」~
htan
1
110
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
190
Webhook best practices for rock solid and resilient deployments
glaforge
1
270
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
170
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.2k
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
220
今日から始めるAmazon Bedrock AgentCore
har1101
4
400
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
210
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Featured
See All Featured
From π to Pie charts
rasagy
0
120
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
Google's AI Overviews - The New Search
badams
0
900
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
910
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
110
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
62
Building AI with AI
inesmontani
PRO
1
690
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
110
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Transcript
NOSQL & POLYGLOT PERSISTENCE Universitetet i Oslo Ole-Martin Mørk 25/03/15
Ole-Martin Mørk Scientist BEKK +47 90252338 twitter.com/olemartin
[email protected]
HVEM ER
JEG?
AGENDA RELATIONAL DATABASES KEY/VALUE STORES DOCUMENT STORES COLUMN ORIENTED DATABASES
GRAPH DATABASES POLYOGLOT PERSISTENCE
HVORFOR BENYTTE KEY-VALUE STORES? 4 When all you have is
a hammer..
None
Lookup Report Store Relation Search
None
Not Only SQL
None
None
NOSQL Ikke relasjonelle Dynamisk skjema Skalerbare Åpen kildekode
None
Key/Value Wide Column Document Graph
KEY/VALUE STORES Key Value
KEY/VALUE STORES key value key value key value key value
key value key value key value key value key value key value
KEY/VALUE STORES
DOCUMENT STORES Key Doc
DOCUMENT STORES key { "glossary": { "title": "example glossary", "GlossDiv":
{ "title": "S", "GlossList": { "GlossEntry": { "ID": "SGML", "SortAs": "SGML”,
DOCUMENT STORES
WIDE COLUMN STORES Key Column Families
WIDE COLUMN STORES row key key value key value key
value key value key value key value key value key value key value key value
WIDE COLUMN STORES
Key/Value Wide Column Document Graph
GRAPH DATABASES Node Node RELATION
GRAPH DATABASES key value key value key value Labels key
value key value key value Type key value key value key value Labels
None
None
Transaksjoner
BASE ACID Key/Value stores Document stores Wide Column stores Graph
databases
Consistency Availability Partition
Datasenter 1 Datasenter 2 Availability Consistency
Polyglot Persistence
I'm confident to say that if you’re starting a new
strategic enterprise application you should no longer be assuming that your persistence should be relational. Martin Fowler
Brukersesjoner Redis Finansielle data MySQL Handlekurv RIAK Anbefalingsmotor Neo4j Produktkatalog
MongoDB Rapportering PostgreSQL Analyse Cassandra Logger Elastic Search Hendelser Event Store
None
None
None
Lese og skrive data BEHOV 1
BEHOV 1 Key-Value Store Lese og skrive data Application KV
Søke i dataene BEHOV 2
BEHOV 2 Search Engine Søke i dataene Application KV Search
Relasjonelt søk BEHOV 3
BEHOV 3 Graph Database Relasjonelt søk Application KV Search Graph
Application KV Search Graph
Application KV Search Graph
Application KV Search Graph Events
Generer rapporter BEHOV 4
BEHOV 4 RDBMS Generer rapporter Application KV Search Graph Events
RDBMS
POLYGLOT PERSISTENCE Application KV Search Graph Events RDBMS
?
TAKK FOR OPPMERKSOMHETEN Ole-Martin Mørk