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
AWS DynamoDB Accelerator (DAX) 101
Search
Ken Wagatsuma
February 14, 2020
Programming
7.4k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS DynamoDB Accelerator (DAX) 101
Introduction to AWS DynamoDB Accelerator (DAX)
Ken Wagatsuma
February 14, 2020
More Decks by Ken Wagatsuma
See All by Ken Wagatsuma
Pregel Graph Compute Engines - Supersteps Exampls
kenju
0
270
Kafka on Kubernetes with Strimzi
kenju
0
220
Moden browser introduction
kenju
1
490
Cookpad summer internship 2019 - API
kenju
0
11k
Introduction to Design Patterns
kenju
0
160
GraphQL Asia 2019 "Re-architecture of a decade-old app with BFF/GraphQL"
kenju
0
9.4k
Introduction to TypeScript
kenju
0
820
Introduction to Programmatic Ad
kenju
0
320
社内管理システムのための技術選定
kenju
0
810
Other Decks in Programming
See All in Programming
AWSに止められる覚悟してますか?
morizo_1984
2
510
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
350
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.8k
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
350
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.5k
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
760
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
200
残高管理から台帳サービスへの進化
artoy
0
160
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
300
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
160
ジョジョの世界をXRで再現する
mofurune
0
130
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
160
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
A Modern Web Designer's Workflow
chriscoyier
699
190k
Writing Fast Ruby
sferik
630
63k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
A Soul's Torment
seathinner
8
3.7k
For a Future-Friendly Web
brad_frost
183
10k
Done Done
chrislema
187
17k
Building Applications with DynamoDB
mza
96
7.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Agile that works and the tools we love
rasmusluckow
331
22k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
570
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