Amazon DynamoDB

Amazon DynamoDB is a fully managed NoSQL database service from Amazon Web Services. Amazon announced it on January 18, 2012, in a press release headlined “Amazon Web Services Launches Amazon DynamoDB, A New NoSQL Database Service Designed for the Scale of the Internet,” describing it as a fully managed service that provides extremely fast and predictable performance with seamless scalability.

DynamoDB descends from the ideas in Amazon’s 2007 Dynamo paper, but it is offered as a hosted service rather than software that customers operate themselves. The AWS developer guide describes DynamoDB as a serverless, fully managed, distributed NoSQL database with single-digit millisecond performance at any scale, built to overcome the scaling and operational complexities of relational databases. As a managed service it handles setup, configuration, patching, replication, backups, and hardware provisioning, so a newly created table is immediately ready for production.

According to its documentation, DynamoDB supports both key-value and document data models. It deliberately omits features that do not scale well, such as the JOIN operator, and instead encourages denormalized data models and access by key. By default it replicates data across three Availability Zones, and its global tables feature offers multi-Region, multi-active replication with a 99.999 percent availability service level agreement.

DynamoDB powers high-traffic Amazon properties and systems, and the documentation notes that its APIs have handled trillions of calls and that it serves customers with tables exceeding 200 TB and peak traffic over half a million requests per second. It is a canonical example of taking a research-grade distributed system design and delivering it as an operationally simple cloud service.