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
DynamoDB
Search
Pierre GOUDJO
December 30, 2021
Technology
0
88
DynamoDB
Explaining the architecture of AWS DynamoDB
Pierre GOUDJO
December 30, 2021
Tweet
Share
More Decks by Pierre GOUDJO
See All by Pierre GOUDJO
Simplicity matters
pierregoudjo
0
58
Always available workspaces: Dotfiles, Github and other shenanigans
pierregoudjo
0
48
Amazon Virtual Private Cloud
pierregoudjo
0
72
Service Discovery: Fundamentals
pierregoudjo
0
78
Relational Databases on AWS: Amazon RDS and Aurora
pierregoudjo
0
95
Property-based testing: The lazy programmer's guide to writing thousands of tests
pierregoudjo
0
96
Object storage: An exploration of AWS S3
pierregoudjo
0
59
Load Balancing: A strategy for scalable internet applications
pierregoudjo
0
87
Boring Technologies
pierregoudjo
0
49
Other Decks in Technology
See All in Technology
Instant Apps Eulogy
cyrilmottier
1
120
リモートワークで心掛けていること 〜AI活用編〜
naoki85
0
180
AIに目を奪われすぎて、周りの困っている人間が見えなくなっていませんか?
cap120
1
680
Amazon GuardDuty での脅威検出:脅威検出の実例から学ぶ
kintotechdev
0
120
僕たちが「開発しやすさ」を求め 模索し続けたアーキテクチャ #アーキテクチャ勉強会_findy
bengo4com
0
2.5k
大規模イベントに向けた ABEMA アーキテクチャの遍歴 ~ Platform Strategy 詳細解説 ~
nagapad
0
240
AIに頼りすぎない新人育成術
cuebic9bic
3
320
OPENLOGI Company Profile for engineer
hr01
1
38k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
18
52k
MCP認可の現在地と自律型エージェント対応に向けた課題 / MCP Authorization Today and Challenges to Support Autonomous Agents
yokawasa
5
2.4k
20250807_Kiroと私の反省会
riz3f7
0
240
生成AIによるデータサイエンスの変革
taka_aki
0
3k
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
184
22k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Building Adaptive Systems
keathley
43
2.7k
Designing for humans not robots
tammielis
253
25k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Typedesign – Prime Four
hannesfritz
42
2.8k
What's in a price? How to price your products and services
michaelherold
246
12k
Git: the NoSQL Database
bkeepers
PRO
431
65k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Transcript
DynamoDB Pierre Goudjo Exploration of a NoSQL database
What is DynamoDB?
Amazon DynamoDB Developer Documentation Amazon DynamoDB is a fully managed
NoSQL database service that provides fast and predictable performance with seamless scalability
None
Let’s dive in a little bit
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
None
There is no server to manage on DynamoDB
NOT REALLY
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
A NoSQL database is a datastore that doesn’t follow the
relational model introduced by Edgar F. Codd in 1970
NoRel would have been a more appropriate name
So what’s the relational model?
None
TABLE
TABLE Row
TABLE Row Column
None
None
Relational Databases also offer ACID guarantees
NoSQL defines what the database is not
NoSQL comes in multiple flavours
Key-Value databases
Document-oriented databases
Wide column databases
Graph databases
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Amazon DynamoDB is a fully managed wide- column database service
that provides fast and predictable performance with seamless scalability
DynamoDB is sometimes referred as a document database
None
None
None
What problem DymamoDB is trying to solve?
2004
Amazon is experiencing massive outages because their Oracle database could
not keep up with the load on the website
People couldn't fill up their shopping cart
None
They notice however that most data access where done via
primary key
None
Let’s write a database
None
They solved their write contention problem by eschewing the traditional
relational model
None
None
Let’s see how these ideas translate in DynamoDB components and
architecture
None
None
None
None
None
None
None
10GB
10GB
O(1) 10GB
What to do if I need access via customerID?
What to do if I need access via customerID? I
would need to “switch” primary key.
What to do if I need access via customerID? I
would need to “switch” primary key. Indexes come to the rescue
None
What to do if I need customer orders sorted by
TotalPrice?
What to do if I need customer orders sorted by
TotalPrice? I would need to “switch” sort key
What to do if I need customer orders sorted by
TotalPrice? I would need to “switch” sort key Local indexes come in handy
None
None
None
None
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability
Recap
Single-item actions • PutItem • GetItem • UpdateItem • DeleteItem
Actions
Multi-item actions • BatchWriteAPI • BatchReadAPI • Query • Scan
Actions
Transactions • TransactGetItems • TransactWriteItems Actions
Extras
Amazon DynamoDB Accelerator (DAX)
DynamoDB Global Tables
DynamoDB Streams Use cases ✴Data aggregation ✴Replication ✴Archiving/Auditing ✴Reporting ✴Noti
fi cations/Messaging ✴Search
And a lot more • Incremental backup/Restore • Point-in-time recovery
• PartiQL • Encryption at rest • Transactions • Item TTL
None