📖 What is Amazon DynamoDB?
Amazon DynamoDB is a fully managed, serverless NoSQL database service providing fast and predictable performance with seamless scalability. It supports both key-value and document data models, offering high availability and automatic replication across multiple Availability Zones for data durability.
"DynamoDB is a core service for applications requiring high scalability and low latency. Focus on its serverless nature, automatic scaling, and use cases beyond simple key-value storage. Distinguish it from RDS; DynamoDB is schemaless, while RDS requires a defined schema."
📚 Certification: AWS Certified Cloud Practitioner (CLF-C02)
🔑 What are the Key Concepts of Amazon DynamoDB?
- ▸ DynamoDB is a NoSQL database, meaning it doesn't require a fixed schema, offering flexibility for evolving data structures.
- ▸ It's serverless, so AWS manages the infrastructure, patching, and scaling, reducing operational overhead for users.
- ▸ Partitions and replication are automatically managed, ensuring high availability and durability across multiple Availability Zones.
- ▸ DynamoDB uses Primary Keys (Partition Key and Sort Key) to efficiently retrieve data; understanding these is crucial for query design.
- ▸ Capacity Mode options (On-Demand and Provisioned) impact cost and performance; choose based on predictable vs. unpredictable traffic.
🎯 How does Amazon DynamoDB appear on the CLF-C02 Exam?
You may be asked to identify the best database service for an application needing to handle millions of requests per second with minimal latency, such as gaming leaderboards or ad tech.
A scenario might describe a mobile application storing user session data; determine which database service offers the required scalability and low latency without server management.
Expect questions about choosing between DynamoDB and RDS based on application requirements – consider schema flexibility, scalability needs, and cost.
❓ Frequently Asked Questions
When should I choose DynamoDB over RDS?
Choose DynamoDB when you need extreme scalability, low latency, and a flexible schema. RDS is better for applications requiring complex relationships and SQL queries with a defined schema.
What are Read/Write Capacity Units (RCUs/WCUs) and how do they affect cost?
RCUs and WCUs determine the read and write throughput of your DynamoDB table. Higher capacity means higher cost, but also better performance. On-Demand capacity mode eliminates the need to provision capacity.
How does DynamoDB handle data consistency?
DynamoDB offers eventual consistency for reads by default, but you can request strongly consistent reads at a higher cost. Understand the trade-offs between consistency and performance for your application.