View
1.763
Download
3
Category
Preview:
DESCRIPTION
Citation preview
Auto scale DynamoDB with
Dynamic DynamoDB
Sebastian Dahlgren!@sebdah
Project overviewThroughput metrics via CloudWatch
Supports auto scaling oftables & global secondary indexes
Live for about a year
>10.000 monthly downloads
Open source
Background
Auto scaling is important!- Saves money- Saves your skin
No auto scaling in DynamoDB
Basic config example
Configuration• [global]
o AWS credentials o Check interval o Circuit breaker • [logging]
o Logging settings o Supports external logging config • [table: my_table]
o Rules for scaling a certain table o Maintenance windows • [gsi: my_gsi table: my_table]
o Rules for scaling Global Secondary Indexes
Handling many tables or dynamic table names
• Table list refreshed for every iteration o Addition of new tables o Removal of old tables
• Use regular expressions in your configuration
[table: ^daily_data.*$]
Scaling down• DynamoDB limits down scaling to 4 times per UTC
day • Optimize downscaling by using
o reads-‐lower-‐threshold
o writes-‐lower-‐threshold
o always-‐decrease-‐rw-‐together
o maintenance-‐windows
SNS notifications
• Get an email when your provisioning is updated
• Currently supports: o scale-up o scale-down
Circuit breaker
• Dynamic DynamoDB can poll an URL to check system health
• All scaling is paused if the URL does not return HTTP 200 OK
CloudFormation template• Launches a t1.micro
instance (<$15/mo) • Auto Scaling Group
min: 1, max: 1 • Running Dynamic
DynamoDB in daemon mode • Configuration on S3
TadaaImage publishing service
Thank you!
sebdah / dynamic-dynamodb
Recommended