Amazon DynamoDB
Amazon DynamoDB is a serverless NoSQL database service on Amazon Web Services that delivers fast, predictable performance with single-digit-millisecond latency for key-value and document data structures.
AI Practitioner focus
- DynamoDB is a serverless key-value/document database for application state, agent/session metadata, user preferences, and low-latency lookup around an AI system.
- It is not one of the vector-store examples emphasized by the current FM/RAG objective; use it when access is by known keys and predictable application queries.
Key points
- Push-button scaling — tables can scale with no downtime.
- Multi-region cloud service supporting key-value and document data structures.
- High availability and durability via synchronous replication of data on solid-state disks (SSDs) across 3 Availability Zones in a region.
- Stores session state and supports ACID transactions for business-critical applications.
- On-demand backup capability for long-term retention, plus point-in-time recovery from accidental writes or deletes.
- DynamoDB Accelerator (DAX) — a highly available in-memory cache that serves data from DynamoDB tables; not intended for strongly consistent reads or write-intensive workloads.
- Global Tables — cross-region replication that deploys a multi-region database with automatic multi-master replication across AWS regions.
- Two capacity modes: on-demand (pay-per-request, no capacity planning) and provisioned (specify read/write capacity units, with optional auto scaling).
- Distinct from Amazon RDS: DynamoDB is non-relational (key-value/document), while RDS serves structured, relational OLTP workloads — the two address different data models rather than one outperforming the other.
- As an abstracted, serverless service, AWS operates the infrastructure layer and platform; customer responsibility is limited to data classification, IAM permissions, and encryption choices.
- Example architecture: Amazon S3 hosts a website’s static code; a browser request goes through Amazon API Gateway, which triggers AWS Lambda, which runs code that reads/writes the table and returns data to the user.