DynamoDB is AWS's fully-managed NoSQL database that delivers single-digit millisecond response times at ANY scale — from 1 request per second to millions. You never provision servers or manage capacity.
| Concept | Explanation | Example |
|---|---|---|
| Table | Collection of items (like a database table) | orders, users, products |
| Item | A single record (like a row) | One specific order |
| Attribute | A field on an item (like a column) | order_id, user_id, total_price |
| Partition Key | Primary key — determines which partition stores the item | order_id |
| Sort Key | Optional secondary key — orders items within a partition | created_at |
| GSI | Global Secondary Index — query on any non-key attribute | Query orders by user_id |
| Mode | How it Works | Best For |
|---|---|---|
| On-Demand | Pay per request — zero capacity planning | Unpredictable or new workloads |
| Provisioned | Set RCU and WCU — auto-scaling available | Predictable workloads (cheaper at scale) |
DAX is an in-memory cache for DynamoDB that reduces read latency from milliseconds to MICROSECONDS — using the exact same DynamoDB API. No code changes in your application.
DynamoDB Streams captures every change (insert, update, delete) to items in real-time. Connect to Lambda to trigger actions when data changes — perfect for event-driven architectures.