
Episode 20: DynamoDB Deep Dive - Keys, Capacity, DAX, Streams & Global Tables | SAA-C03
Notes de l’épisode
Master DynamoDB! Partition keys, capacity modes, DAX, Streams, Global Tables + the DynamoDB vs RDS decision. Punchy 26-min format!
🆕 INTERACTIVE FORMAT
🎯 PULSE CHECKS - Real pauses to test yourself
⚠️ TRAP SPOTLIGHTS - Exam traps highlighted live
💡 MEMORY HOOKS - Vivid analogies that stick
🗄️ DYNAMODB FUNDAMENTALS
• Fully managed NoSQL - no servers, no patching
• Multi-AZ by DEFAULT (built-in HA!)
• Millions of requests/sec, single-digit ms latency
• 400 KB max item size (larger → S3 + reference)
• Flexible schema, ACID transactions supported
🔑 PRIMARY KEYS (Most tested!)
SIMPLE KEY: Partition key only (hash key)
COMPOSITE KEY: Partition key + Sort key (range key)
CRITICAL: High-cardinality partition keys prevent HOT PARTITIONS. Use user IDs, order IDs, device IDs - NOT status fields with few values.
Classic pattern: Sensor_ID (partition) + Timestamp (sort) for IoT.
Hook: Partition key = file cabinet drawer. Sort key = order within drawer.
⚡ CAPACITY MODES
PROVISIONED (default):
• Specify RCUs/WCUs, plan beforehand
• Cheaper, auto-scaling available
• Use for: predictable, steady traffic
ON-DEMAND:
• Auto-scales, no planning
• Pay per request (~2.5x cost)
• Use for: unpredictable, sudden spikes
READ CONSISTENCY:
• Eventually consistent (default, cheaper)
• Strongly consistent (2x RCU cost!)
Hook: Provisioned = gym membership. On-Demand = pay-per-visit.
🚀 DAX (DynamoDB Accelerator)
• In-memory cache for DynamoDB
• MICROSECOND latency (1000x faster!)
• ZERO code changes (API-compatible)
• Solves read congestion
DAX vs ElastiCache:
• DAX = DynamoDB reads, no code changes
• ElastiCache = aggregations, general caching
Hook: DAX = turbocharger bolted on DynamoDB.
📊 DYNAMODB STREAMS
• Ordered change log (create/update/delete)
• 24-HOUR retention
• Triggers Lambda in real-time
• Use: welcome emails, analytics, replication
Need more? Kinesis Data Streams = 1-year retention.
Pattern: Streams + Lambda = serverless event processing
Hook: Streams = security camera. Lambda = the guard watching.
🌍 GLOBAL TABLES
• Multi-region ACTIVE-ACTIVE replication
• Read AND write in ANY region
• Sub-second replication
• REQUIRES DynamoDB Streams enabled!
⏰ TTL (Time To Live)
• Auto-delete items after expiry timestamp
• FREE (no write capacity consumed)
• Use: session data, compliance cleanup
💾 BACKUPS
• PITR: continuous, 35 days, restore to any second
• On-Demand: long-term retention via AWS Backup
• Restores ALWAYS create NEW tables
• Export to S3 for Athena (needs PITR)
🎯 DYNAMODB vs RDS
USE DYNAMODB when:
• Massive scale, consistent performance
• Simple, known access patterns
• Flexible/evolving schema
• Serverless architectures
• Single-digit ms latency
USE RDS/AURORA when:
• Complex queries, joins
• Highly relational data
• Ad-hoc analytics
• Existing SQL applications
The serverless trio: API Gateway + Lambda + DynamoDB
Hook: DynamoDB = vending machine. RDS = restaurant kitchen.
⚠️ TOP EXAM TRAPS
1. Hot partitions = low-cardinality keys (fix key, not capacity)
2. 400 KB item limit (larger → S3)
3. Unpredictable = On-Demand
4. DAX (DynamoDB reads) vs ElastiCache (aggregations)
5. Global Tables REQUIRE Streams
6. Streams = 24hr, Kinesis = 1 year
7. PITR = 35 days max, restores create NEW tables
8. Strongly consistent reads = 2x RCU
9. TTL deletions are FREE
10. API Gateway + Lambda + DynamoDB = serverless trio
🎧 Perfect for SAA-C03 prep! DynamoDB has its own exam category.
━━━━━━━━━━━━━━━━━━━━
📚 FREE SAA-C03 cheat sheet 👉 https://payhip.com/b/Zv5hd
🎯 104 practice questions with full explanations - 20% off with code PASS 👉 https://payhip.com/b/CLvcu
━━━━━━━━━━━━━━━━━━━━
#AWS #DynamoDB #NoSQL #DAX #Serverless #SAAC03 #SolutionsArchitect
⭐ 5-star rating if this helps!