DynamoDB - NoSQL with NoManagement
February 05, 2018

DynamoDB - NoSQL with NoManagement

Alan Balasundaram | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User

Overall Satisfaction with Amazon DynamoDB

DynamoDB is a wide-column store. Various product development teams that are on AWS make use of it as a key-value store, when relational hierarchy isn't as important. Much like other cloud services, the benefit is once provisioned, the management aspect is wholly owned by Amazon. We evaluated and chose DynamoDB over running RDMS on RDS or even on our own EC2 as our use case provided significant cost savings. Our applications needed a resilient data store, but did not have relational data, nor did it have high throughput needs, allowing us to have a fully managed, and scalable store at a fraction of of cost.
  • Provisioned through-put pricing. You pay for the bandwidth you need.
  • Simple API for developers to use.
  • Managed by Amazon, high availability, and high durability.
  • Pricing is based on through-put units, which can be tricky to understand.
  • DynamoDB can autoscale up, but applications must guard against running up against provisioned throttling limits.
  • High throughput use cases can get expensive quickly.
  • Dynamodb reduced the need for SRE headcount to maintain infrastructure.
  • Built in metrics dove tails with existing monitoring tooling.
  • Flexible NoSQL design allows developers to focus on business problems, rather than database design.
As a fully managed NoSQL service, DynamoDB provides a lot of functionality for relatively low cost. Scaling, sharding, throughput performance is managed for you, and you only pay for the bandwidth you provision.
Amazon S3 (Simple Storage Service), Redis, MySQL
For non relational data, DynamoDB is my go-to datastore. It scales with my needs, and offers a price to performance ratio that is unmatched--especially when factoring in management time.
For most use cases where utilization is fairly constant, DynamoDB provides guaranteed performance. With autoscaling, DynamoDB can handle bursty traffic. As bandwidth can be reprovisioned, it's great for use in the prototyping stage all the way up to production applications.

For highly volatile access patterns, DynamoDB will require you to over provision you throughput, paying for bandwidth you may not utilize.