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
AWS DynamoDB Accelerator (DAX) 101
Search
Ken Wagatsuma
February 14, 2020
Programming
2
7.1k
AWS DynamoDB Accelerator (DAX) 101
Introduction to AWS DynamoDB Accelerator (DAX)
Ken Wagatsuma
February 14, 2020
Tweet
Share
More Decks by Ken Wagatsuma
See All by Ken Wagatsuma
Pregel Graph Compute Engines - Supersteps Exampls
kenju
0
210
Kafka on Kubernetes with Strimzi
kenju
0
160
Moden browser introduction
kenju
1
400
Cookpad summer internship 2019 - API
kenju
0
10k
Introduction to Design Patterns
kenju
0
81
GraphQL Asia 2019 "Re-architecture of a decade-old app with BFF/GraphQL"
kenju
0
8.9k
Introduction to TypeScript
kenju
0
720
Introduction to Programmatic Ad
kenju
0
260
社内管理システムのための技術選定
kenju
0
760
Other Decks in Programming
See All in Programming
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
740
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
290
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
650
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
430
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
230
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
350
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
5
2.4k
5つのアンチパターンから学ぶLT設計
narihara
1
160
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
660
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
1
320
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
スタートアップの急成長を支えるプラットフォームエンジニアリングと組織戦略
sutochin26
1
4.7k
Featured
See All Featured
Navigating Team Friction
lara
187
15k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
810
Designing for humans not robots
tammielis
253
25k
Adopting Sorbet at Scale
ufuk
77
9.4k
Gamification - CAS2011
davidbonilla
81
5.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Building an army of robots
kneath
306
45k
Faster Mobile Websites
deanohume
307
31k
Why Our Code Smells
bkeepers
PRO
337
57k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
DAX 101 1 2020/2/15 Kenju Wagatsuma
DAX Wrap Up 2
DAX is… DynamoDB-specific in-memory cache store 3
[DAX] Glossary of Terms 4 5FSN %FTDSJQUJPO /PEFT "OPEFJTUIFNJOJNVNDPNQPOFOUGPSB%"9DMVTUFSl1SJNBSZOPEFzIBOEMFSFBE
XSJUFSFRVFTUTBOElSFQMJDBOPEFTzPOMZIBOEMFSFBESFRVFTUT $MVTUFST "DMVTUFSJTDPNQPTFEGSPN OPEFT 1BSBNFUFS(SPVQT :PVDBODIBOHF55-CZTFUUJOHDVTUPN1BSBNFUFS(SPVQT
[DAX] Comparison to other cache store 5 %"9 &MBTUJDBDIFNFNDBDIFE JONFNPSZ
.BOBHFE ✅ ✅ 4IBSFEDBDIF ✅ ✅ #BDLFOEEBUBTPVSDF %ZOBNP%#POMZ BOZUIJOH .Z42- %JTL 31$ FUD .FUSJDT ✅ ✅ 55- ⚠ HMPCBM55- ✅ ⚠ IBSEXPSLSFRVJSFE 1FSGPSNBODF ЖdNT dNT ЖdЖ
[DAX] Single-leader Replication 6 +3 nodes for different Multi-A/Z for
production Background replication (eventually consistent model) Single “primary node” handles all write requests
Subnet C Subnet B DAX Cluster Subnet A [DAX] Single-leader
Replication - Write 7 Primary Replica Replica
DAX Cluster [DAX] Single-leader Replication - Write 8 Primary Replica
Replica Application DynamoDB Table DynamoDB Table Write Read
DAX Cluster [DAX] Single-leader Replication - Replicate 9 Primary Replica
Replica Application DynamoDB Table DynamoDB Table Write Read
DAX Cluster [DAX] Single-leader Replication - Read 10 Primary Replica
Replica Application DynamoDB Table DynamoDB Table Write Read
[DAX] Cache Algorithm 11 Least Recently Used (LRU) cache Negative
cache also implemented Eviction happens when items are taken & cache is full Global Time-To-Live (TTL)
[DAX] Item Cache / Query Cache 12 Item Cache Query
Cache Operation GetItem / BatchGetItem Query / Scan Metrics ItemCacheHits/ItemCacheMisses QueryCacheHits/QueryCacheMisses ScanCacheHits/ScanCacheMisses
[DAX] Write Strategy - Write-Through 13 #write #read Application DAX
DynamoDB Application DAX DynamoDB
[DAX] Write Strategy - Write-Around 14 #write #read Application DynamoDB
Application DAX DynamoDB
[DAX] Write Strategy 15 8SJUF5ISPVHI 8SJUF"SPVOE 1SPT 4ZODISPOJ[FEJUFNTCFUXFFO%"9 BOE%ZOBNP%# 8SJUFDBOTDBMF
FHCVMLVQEBUF $POT ☹8SJUFPQFSBUJPOIBTPWFSIFBE ☹*UFNTDBOCFJODPOTJTUFOU JGPUIFS BQQXSJUFUP%ZOBNP%#EJSFDUMZ ☹&WFOUVBMMZ$POTJTUFOU JUFNTJO%"9 OPEFTDBOCFPVUEBUFE
[DAX] Within VPC + Multi-A/Z 16
[DAX] Limitation 17 Maximum nodes is 10 (1 primary node
+ ~9 replica nodes) Maximum nodes is 50 per Region. Maximum Parameter Groups is 20 per Region Maximum DAX Subnet Groups is 50 per Region. Maximum subnets per groups is 20.
Monitoring 18
[Monitoring] CloudWatch Metrics 19 NFUSJDT EFTDSJQUJPO $166UJMJ[BUJPO PG$16VUJMJ[BUJPOUTNBMMVTFW$16 ⚠:PVOFFEUPTDBMFVQJGUIJTNFUSJDTJTTBUVSBUFE *UFN$BDIF)JUT
*UFN$BDIF.JTTFT $BMDVMBUF$BDIF)JU3BUJP GSPNUIFTFNFUSJDT ⚠*UFN$BDIF2VFSZ$BDIF
[Monitoring] CloudWatch Metrics 20 NFUSJDT EFTDSJQUJPO 5ISPUUMJOH3FRVFTU$PVOU PGSFRVFTUTUISPUUMFECZUIFOPEFPSDMVTUFS ⚠5ISPUUMFEBU%"95ISPUUMFEBU%ZOBNP%# 'BJMFE3FRVFTU$PVOU
PGSFRVFTUTUIBUSFTVMUFEJOBOFSSPSSFQPSUFE ⚠&SSPS3FR$PVOU5ISPUUMFE 'BJMFE
[Monitoring] CloudWatch Metrics 21 NFUSJDT EFTDSJQUJPO &WJDUFE4J[F ⚠*G$BDIF)JU3BUJP&WJDUFE4J[FJTHSPXJOH UIF XPSLJOHTFUNJHIUJODSFBTF4IPVMEDPOTJEFSTDBMFVQ
$MJFOU$POOFDUJPOT PGTJNVMUBOFPVTDPOOFDUJPOTGSPNDMJFOUT ⚠$MJFOU$PO$PVOU㲈PG3VOOJOH5BTLT
[Monitoring] Grafana 22
[Monitoring] SLI/SLO 23
Alerting 24
[Alerting] CW Alarm - Infrastructure 25 CW Alarm SNS Topic
Lambda Slack
[Alerting] CW Alarm - CPUUtilization 26
[Alerting] CW Alarm - Cache Hit Ratio 27 ItemCacheHitRatio =
ItemCacheHits / ( ItemCacheHits + ItemCacheMisses )
[Alerting] CW Alarm - Cache Hit Ratio 28
[Alerting] DAX Events - Infrastructure 29 DAX Event SNS Topic
Lambda Slack
[Alerting] DAX Events - Infrastructure 30 failure/success in adding a
node changes to the security groups