AWS DynamoDB

AWS DynamoDB (DDB) is a NoSQL, is a highly-durable B-tree. Meaning searches, sequential access, insertions, and deletions can be done in logarithmic time (fast).

Available in these regions: us-east-2, us-east-1, us-west-1, us-west-2, ca-central-1. DynamoDB is a tier-one service/1st class citizen in all AWS regions because AWS rely on it.

2019 AWS Prime Day it delivered
Across the 48 hours of Prime Day, these were 7.11 trillion calls to the DynamoDB API , peaking at 45.4M requests per second.

2020 AWS Prime Day it delivered
Across the 66 hours of Prime Day, there were 16.4 trillion calls to the DynamoDB API, peaking at 80.1M requests per second.

Characteristics

DynamoDB Terms mapped to Relational Database

Who are using DynamoDB

Notion, Dropbox, Adobe Autodesk, Netflix, Duolingo, Snapchat.

Duolingo Case Study

31 billion rows
24K read / 3.3K write ops

Duolingo supports 80 different languages courses, 18 million active use, 6 billion exercises, only 2 in DevOps.

Dropbox Alki, or how we learned to stop worrying and love cold

Alki: Audio Logs application.

hot: high I/O throughput, fast, random access => RAM
cold: low I/O throughput. => Disk

They use Amazon DynamoDB as the hot store, Amazon S3 as the cold store.

Pricing

Charge money by reading/write operations from disk + storage instead of number of CPUs, RAM compares to AWS RDS / other usual databases pricing scheme.

On-demand or (Planned) Provisioned Capacity. After how application behaved figured out (access patterns identified). Costs can be projected with DynamoDB.

There are consistent read (immediately read after write) and eventually read (not immediately read after write, 2x cheaper than consistent read). Read something not exists also costs 1 / 0.5 read capacity for consistent/eventually read.

Besides write/read capacity:

Data Storage

Real-world cost I found

What is available

FAQ