What is Amazon DynamoDB? NoSQL Database Guide – Use Cases, Pricing, and Limits
Table of Contents
Amazon DynamoDB is a fully managed, serverless NoSQL database from AWS that stores data as key-value pairs and documents. It returns reads and writes in single-digit milliseconds at almost any scale, and AWS manages the infrastructure, patching, and data replication. Backup features, such as point-in-time recovery, can be configured separately. You create a table, choose a key, and start writing data.
If you are asking what Amazon DynamoDB is and whether it suits your next application, this guide explains how it works, where it fits, what it costs in 2026, and the limits worth knowing before you design your first table.
What Is Amazon DynamoDB?
Amazon DynamoDB launched in 2012, and its design traces back to an internal Amazon system described in the well-known Dynamo paper. Amazon built that system after its shopping cart struggled under holiday traffic on traditional relational databases. The lesson was simple. Some workloads need predictable speed at huge scale more than they need complex joins.
DynamoDB is a NoSQL database, which means it stores data without the fixed tables, rows, and schemas of a relational database. Each item in a table can carry different attributes. The only thing every item must share is its primary key.
A few traits set DynamoDB apart from most databases your team has used before:
- Serverless operation: There are no instances to size, no clusters to patch, and no maintenance windows.
- Consistent performance at scale: Response times stay in single-digit milliseconds whether a table holds one gigabyte or hundreds of terabytes.
- Built-in durability: Data is replicated across three Availability Zones in a region automatically.
- Pay per request option: On-demand mode bills only for the reads and writes you actually make.
>>> Read more: The End of VMs, the Rise of Serverless Containers
How Amazon DynamoDB Works
Every DynamoDB design comes down to four building blocks: how data is stored in tables, how keys decide where each item lives, how indexes add extra ways to look data up, and how reads and writes behave.
Here is how each one works.
Tables, Items, and Attributes
A table is a collection of items. An item is a single record, similar to a row, and it can be up to 400 KB in size. Attributes are the individual fields inside an item, such as a name, price, or timestamp. Attributes can be simple values, lists, or nested maps up to 32 levels deep.
Partition Keys and Sort Keys
Every table needs a primary key. The simplest version is a partition key on its own, such as a user ID. DynamoDB hashes that key to decide which physical partition stores the item. You can also add a sort key, such as an order date, so that many items share one partition key and stay ordered within it. Choosing a key with many distinct values spreads traffic evenly and keeps performance smooth.
Secondary Indexes
Indexes let you query the same data by a different key. A global secondary index (GSI) lets you query with a different partition key and an optional sort key. Its key attributes must be top-level string, number, or binary attributes, and each table supports up to 20 GSIs by default. A local secondary index (LSI) keeps the same partition key with a different sort key, with up to 5 per table, and it must be created with the table.
Reads, Writes, and Consistency
Reads are eventually consistent by default, which is cheaper and fast enough for most applications. You can request a strongly consistent read when your code must see the very latest write. DynamoDB also supports ACID transactions across up to 100 items, which helps with tasks such as transferring credit between two accounts.
>>> Read more: What is Amazon Aurora? Architecture, Pricing, and When to Choose It Over RDS
Features That Make DynamoDB Production-Ready
DynamoDB ships with a set of managed features that would take months to build on a self-hosted database.
DynamoDB Streams
DynamoDB Streams captures item-level inserts, updates, and deletes in the order they occur for each item. Each change appears once in the stream, and records stay available for 24 hours. You can connect a stream to AWS Lambda to trigger code on each change, such as sending a welcome email when a new user appears.
Global Tables
Global tables replicate a table across multiple AWS regions. Users in Singapore and Frankfurt both read and write locally, and DynamoDB keeps the copies in sync. This is a common foundation for disaster recovery and multi-region applications.

Backup and Point-in-Time Recovery
On-demand backups capture a full copy of a table at any moment with no performance impact. Point-in-time recovery lets you restore a table to any second within the last 35 days, which protects against accidental deletes or a bad deployment.
DynamoDB Accelerator (DAX)
Amazon DynamoDB Accelerator is an in-memory cache built for DynamoDB. It brings read latency down to microseconds for read-heavy workloads such as product catalogs and leaderboards.
Time to Live
Time to Live (TTL) deletes items automatically after a timestamp you set. Session data, temporary tokens, and old logs can expire on their own, and TTL deletes do not consume write capacity.
Security and Encryption
All data is encrypted at rest by default with keys managed in AWS Key Management Service. Access is controlled through AWS IAM, down to individual items and attributes, and you can keep traffic private with VPC endpoints.
Common Amazon DynamoDB Use Cases
DynamoDB fits best where access patterns are known in advance and traffic can swing sharply. These are the workloads we see most often.

| Use case | Why DynamoDB fits | Example |
| E-commerce carts and orders | Handles sudden sale-day spikes with steady latency | A flash sale that multiplies traffic in minutes |
| User profiles and sessions | Fast lookups by user ID, automatic expiry with TTL | Login sessions for a mobile banking app |
| Gaming | Low-latency writes for player state and leaderboards | Real-time scores across thousands of matches |
| IoT and telemetry | High write throughput with time-ordered sort keys | Sensor readings from factory equipment |
| Serverless backends | Pairs naturally with Lambda and API Gateway | An event registration API with no servers to manage |
| Metadata stores | Simple key lookups at scale | File and media metadata for content stored in Amazon S3 |
Many of these applications sit behind Amazon API Gateway and Lambda, with files kept in Amazon S3 and only their metadata in DynamoDB. That combination is one of the most widely used serverless patterns on AWS.

Read more: Generative AI in Banking: Real Use Cases from Vietnam’s Financial Sector
On-Demand vs Provisioned Capacity
DynamoDB offers two capacity modes, and you can switch between them as your traffic pattern changes.
| Factor | On-demand mode | Provisioned mode |
| How you pay | Per read and write request | Per hour for reserved read and write capacity |
| Capacity planning | None needed | You set capacity, with optional auto scaling |
| Best for | New apps, spiky or unpredictable traffic | Steady, predictable traffic |
| Cost at steady high volume | Higher | Lower, especially with reserved capacity |
| Free tier | Not included | 25 RCUs and 25 WCUs per month |
When On-Demand Makes Sense
On-demand suits new products, internal tools, and anything with traffic that rises and falls without warning. AWS cut on-demand prices by 50% in late 2024, which made this mode the sensible default for most new tables.
When Provisioned Makes Sense
Provisioned capacity becomes cheaper once traffic is stable and well understood. Pair it with auto scaling to follow daily cycles, and buy reserved capacity for the baseline you know will always be there.

Amazon DynamoDB Pricing
DynamoDB charges for reads, writes, storage, and any optional features you turn on. The figures below are for the US East (N. Virginia) region and come from the official DynamoDB pricing page. Asia Pacific regions such as Singapore cost slightly more.

| Charge | Standard table class | Standard-IA table class |
| On-demand writes | $0.625 per million write request units | $0.78 per million |
| On-demand reads | $0.125 per million read request units | $0.155 per million |
| Storage | $0.25 per GB-month | $0.10 per GB-month |
Extra features carry their own rates:
- On-demand backups cost $0.10 per GB-month.
- Point-in-time recovery costs $0.20 per GB-month.
- Restoring a table costs $0.15 per GB restored.
- Global tables bill replicated writes in every additional region.
- DAX clusters bill per node hour.
- The free tier includes 25 GB of storage plus 25 RCUs and 25 WCUs of provisioned capacity each month.
A write request unit covers one write of up to 1 KB, and a read request unit covers one strongly consistent read of up to 4 KB. An eventually consistent read uses half a unit. Transactional reads and writes cost double. Small items and eventually consistent reads stretch every dollar further.
The Standard-IA table class is worth a look for tables where storage is the biggest cost, such as order history or audit logs that are rarely read. The AWS Pricing Calculator helps you model both classes before committing.
>>> Read more: AWS Cost Optimization: 10 Proven Strategies to Reduce Your Cloud Bill in 2026
DynamoDB Limits You Should Know
DynamoDB scales enormously, but it does so within firm rules. Most of them appear in the official service quotas guide.
| Limit | Value |
| Maximum item size | 400 KB, including attribute names |
| Throughput per partition | About 3,000 read units and 1,000 write units per second |
| Default table throughput | 40,000 read and 40,000 write units (adjustable) |
| Global secondary indexes | 20 per table (adjustable) |
| Local secondary indexes | 5 per table |
| Transaction size | Up to 100 items and 4 MB |
| Query and Scan results | Up to 1 MB per response page |
| Tables per Region | 2,500 by default |
The 400 KB Item Limit
Large documents, images, and long logs do not fit in a single item. The usual pattern stores the file in S3 and keeps its location and metadata in DynamoDB. Splitting large records across several items with a shared partition key is another option.
Hot Partitions
If too much traffic lands on one partition key, requests can throttle even when the table has spare capacity overall. Adaptive capacity helps by shifting throughput to busy partitions, but the lasting fix is a partition key with many distinct values, such as a user ID. A low-variety value like a country code tends to create hot spots.

Query Patterns Come First
DynamoDB has no joins and only limited ad hoc querying. You design the table around the questions your application will ask, sometimes storing several entity types in one table. Alex DeBrie’s guide to single-table design is a popular starting point. For analytics, zero-ETL integrations can copy data into Amazon Redshift or Amazon OpenSearch Service for reporting and search.
DynamoDB vs Other AWS Databases
DynamoDB often lands on the same shortlist as AWS’s relational and document databases. Each one solves a different problem.
| Factor | Amazon DynamoDB | Amazon Aurora / Amazon RDS | Amazon DocumentDB |
| Data model | Key-value and document | Relational tables with SQL | JSON documents, MongoDB compatible |
| Query flexibility | Primary keys and indexes | Full SQL, joins, aggregations | Rich document queries |
| Scaling | Automatic, virtually unlimited | Vertical, plus read replicas | Cluster based, with read replicas |
| Operations | Fully serverless | Managed instances or Aurora Serverless | Managed clusters |
| Best for | High-scale apps with known access patterns | Complex queries, reporting, transactions across many tables | Teams moving from MongoDB |
A relational database usually fits better when your data has many relationships, when business users run ad hoc reports, or when access patterns are still unclear. Plenty of systems use both, with DynamoDB serving high-traffic lookups and Aurora handling financial records and reporting. For moving existing data across, AWS Database Migration Service supports DynamoDB as a target.
>>> Read more: What is Amazon Aurora? Architecture, Pricing, and When to Choose It Over RDS
Build on Amazon DynamoDB With Renova Cloud
Renova Cloud is an AWS Premier Tier Services Partner in Vietnam, holding the AWS DevOps and Migration Competencies and named AWS Partner of the Year for Vietnam multiple times (2023, 2024, and 2026). Our engineers design and run cloud-native applications for banks, retailers, manufacturers, and fast-growing digital businesses across Southeast Asia.
We help teams model DynamoDB tables around real access patterns, choose the right capacity mode, migrate from relational or MongoDB databases, and set up backups, monitoring, and cost controls from day one. We also review existing tables to fix hot partitions and trim monthly spend.
If you are planning a new application or struggling with a database that cannot keep up, our team is ready to help. Talk to Renova Cloud’s AWS experts today.
About
Success 