Amazon DynamoDB is well regarded throughout the tech industry. It is Amazon’s non-relational cloud database, which already has a strong user base in the enterprise market, due to its extensive functionality. Users score it well, too, especially in ease of use.
However, it isn’t well rated in hybrid deployments, being cloud only. This has always been AWS’s weakness: it is very focused on the public cloud as opposed to the hybrid cloud. Moreover, DynamoDB is not well rated for tunable consistency, data masking, and professional services.
However, according to market adoption figures, this one has to be on all non-relational DB shortlists – it is great for users of AWS, a vast audience. A massive partner network is another area of appeal. Existing AWS users will find this a no-brainer. But anyone seeking on-prem capabilities should avoid it.
Amazon DynamoDB is a key value and document database that is said to delivers single-digit millisecond performance at scale. It’s a fully managed, multi-region database with built-in security, backup and restore, and in-memory caching for internet applications. Customers include Lyft, Airbnb, Redfin, Samsung, Toyota, and Capital One to support mission-critical workloads.
It has a flexible schema so each row can have any number of columns at any point in time. This allows swift adaption of tables as business requirements change. More than 100,000 AWS users have chosen DynamoDB for mobile, web, gaming, ad tech, IoT, and other applications.
More recent features include: DynamoDB Accelerator (DAX), an in-memory cache that delivers fast read performance for tables; and Amazon DynamoDB On-Demand and Amazon DynamoDB Transactions to scale to thousands of requests per second with no capacity planning required.
DynamoDB supports many different data types for attributes within a table. This includes:
- Scalar Types – A scalar type can represent exactly one value. The scalar types are number, string, binary, Boolean, and null.
- Document Types – A document type can represent a complex structure with nested attributes—such as you would find in a JSON document. The document types are list and map.
- Set Types – A set type can represent multiple scalar values. The set types are string set, number set, and binary set.
Non-relational, for key value and document data models.
With peaks greater than 20 million requests per second. Single-digit millisecond performance.
“It’s great if your internal team can handle all issues. Positives include the uninterrupted access on a global scale which is critical for offshore teams. However, service level quality is poor,” said a Development Manager at a startup.
Can support tables of virtually any size with horizontal scaling to more than 10 trillion requests per day over petabytes of storage.
Automated global replication with global tables, real-time data processing with DynamoDB Streams, availability and fault tolerance are built in. It provides two read/write capacity modes for each table: on-demand and provisioned. Has support for ACID transactions for applications that require complex business logic.
Encryption at rest and continuous backup plus guaranteed reliability. DynamoDB encrypts all customer data at rest by default. Point-in-time recovery (PITR) protects tables from accidental write or delete operations. DAX is a fully managed, highly available, in-memory cache.
- Large-scale low latency applications.
- Globally distributed applications
- Serverless Web applications
- Microservices data store
- Mobile apps
- Real-time bidding platforms and recommendation engines
“The products are powerful and enable large-scale data pipelines. We have a great relationship and a direct link with the account and product team and get help and direction and architectural guidance quickly, both through our standard enterprise support channel and through the account team,” said an IT manager in the hospitality sector.
DynamoDB charges for reading, writing, and storing data in DynamoDB tables, along with any optional features. DynamoDB has two capacity modes and those come with specific billing options for processing reads and writes on tables: on-demand and provisioned.
Pricing example for on-demand capacity mode: $1.25 per million write request units and $0.25 per million read request units.
|20 million requests per sec
|Large-scale low latency applications.
Globally distributed applications
Serverless Web applications
Microservices data store
Real-time bidding platforms and recommendation engines
|$1.25 per million write requests
|Top choice for businesses on the AWS cloud.