TrustRadius
Amazon DynamoDB is a NoSQL database, from Amazon Web Services.https://dudodiprj2sv7.cloudfront.net/product-logos/C0/WR/W80NNOPOBR1E.pngDynamoDB is a great NoSQL storage solutionWe use Amazon DynamoDB as a scalable solution for NoSQL related storage of data. It has the benefit of still requiring a schema so it can guarantee your data shape, but it's not as loose or flexible as a JSON database.,Scalable data storage Solid DB schema Amazon's reliability,Not as flexible as something like Firebase Has a learning curve Ties you into AWS infrastructure,9,Scalability out of the box No server maintenance Infrastructure comes for "free",Redis and BigTable,AWS Lambda, AWS CodePipeline, AWS Elastic Beanstalk,9DynamoDB - NoSQL with NoManagementDynamoDB 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.,10,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.,MongoDB and Redis,Amazon S3 (Simple Storage Service), Redis, MySQL,10NoSQL is DynamoDB. Always.Amazon DynamoDB is just the best NoSQL database. I really love the interface and scalability. The best part is vertical scaling. It's just very affordable and making queries is very easy. Using Amazon's Boto3 API is a good source for proxying queries and requests. Third party module and support are good too. I am really using because they are adding new indexes to the table, making it fast and intuitive for prototyping. I feel they lack Amazon's strong type checking. So I feel they need to work a bit on this part. I've also used DynamoDB on the local system but they need to add more flexibility to the local system. Overall, I feel if you are planning 1 million/min queries then it's perfect for your usage.,The usage of hash and range keys to retrieve flat objects is a plus Very easy usage with CloudFront and Elastic Beanstalk. Using Amazon CloudWatch monitoring on Amazon DynamoDB is always a good point.,I feel they need to improve in strong type checking The relational database is tough to migrate so this might be a no for you. I feel the local setup is a good idea for testing but some improvements are sorely needed.,9,Very good Infra management REST API is amazing and good to use. Amazing Support,Amazon API Gateway, Amazon Chime and Amazon CloudSearch,Amazon Chime, Amazon CloudSearch, Amazon Elastic Transcoder,6Limited SaaS solution that integrates seamlessly into Amazon ecosystemWe made a transition to using DevOps at our organization and AWS is our choice of cloud provider. For a new micro service we built, we need a NoSQL database, that provides basic querying capability and requires minimum maintenance. Considering that Amazon offers DynamoDB as software as a service, it is a de-facto choice for us. It is being used across departments for various micro services. Understanding the querying capability is critical in selecting a database and DynamoDB fits into a use case where we need to query the nested array within the first layer of JSON objects.,Security and managing infrastructure are the first reason why we selected DynamoDB. It takes quite an effort to set other NoSQL databases up in EC2 instances. Since DynamoDB offers single click table (Collection equivalent in MongoDB) setup, it's pragmatic to give this a first shot. It provides decent querying capabilities with excellent documentation. If you have a JSON structure that's relatively flat (not more than 2 nested JSON objects) that needs querying, DynamoDB would be a great choice for you. Neat CLI API that allows for easy setup in a local development environment would make the life of a developer a breeze. This again brings the benefit of having great documentation.,Better querying capability, we had a requirement where we wanted to index and query nested arrays. For example: our sample data structure: {a: [{b: ['array of interest' ]}]}. DynamoDB does not provide neat way to query the 'array of interest'. Hence we had to shift few of our Databases from DynamoDB to Postgres. DynamoDB does not offer any sort of database functions or triggers that would help manipulate the data before performing a transaction. This is key for part of our NoSQL datastore. For example: we wanted to manually maintain consistency of order variable in a JSON array i.e. if we add an element to middle of the array, the order of rest of the elements should shuffle within a single transaction. This functionality leaves something to be desired from DynamoDB. Transaction management is something that DynamoDB does not offer. For example: if we want to perform a read and write within a same transaction, DynamoDB does not offer this capability. Hence, DynamoDB is not a great fit for highly concurrent environment.,There are some feature that DynamoDB does a little differently compared to other products in the market. Effective: Security policy using Amazon IAM. The security on the database is controlled by broader Amazon IAM policy. This negates the need to manage individual security policies for the database.This also integrates very well with rest of the Amazon eco system. Deploying your applications in Amazon VPN would allow rest of the applications to communicate between each other without compromising on security.Ineffective:Not an open source technology: the drawback with not being an open source tech is its development is dependent on the number of resources that Amazon dedicates to the software. The documentation while great in some areas, lags when you want to get work done using some specific functionality of the API.,8,Since the Amazon manages the instance, the amount of time a developer needs to spend configuring the database is less. For comparison, if we were to manage the same instance manually, we need to set up EC2 instance, install the DB, setup backup scripts, track backup failures, which is a great overhead for the dev. Using DynamoDB this overhead is reduced and hence having a great ROI. Great documentation and easy setup makes an easy learning curve to transition to DynamoDB. Only caveat is as with any database, the data structure should be thoroughly analyzed for types of querying because there are limitations with the DynamoDB API. Ties very well with rest of the Amazon eco system. Having rest of the applications in Amazon allows managing the application security a breeze.,MongoDB, PostgreSQL and CouchDB,PostgreSQL, Amazon Relational Database Service, Amazon S3 (Simple Storage Service), Amazon Elastic Compute Cloud (EC2), CloudFoundry, Jenkins, CircleCI, Travis CI, GitHub, IntelliJ IDEA, IntelliJ WebStorm,1An expensive coffin for you NoSQL data.We use dynamodb for to store and track millions of email messages sent by our sass product. Each email is unique, and in order to maintain a full record of our transactions with clients, we store, and recall each message that was ever sent using dynamodb. Because of the sheer scale and data size requirements it makes it very difficult to use traditional methods of recall, especially when you want the actual text of the email to be part of the database and not stored in offline storage.,Recall on primary hashes is very fast, with HTTP latency over the network we were regularly able to call up records in the 20ms range from a database of millions of records Like other NoSQL databases Dynamo lets you easily and quickly add fields to each record without having to define a full schema. Pricing is quite affordable as long as you are efficient with your queries. You really need to be doing hash lookups rather than scans since Amazon charges you per record accessed.,Query "language" leaves much to be desired. If you're coming from a database like MongoDB or SQL you'll find it extremely difficult to get data back out of the system without breaking the bank. Because querying is poor, often the only way to get data out of arbitrary fields is by scanning the records – but the pricing model for this is cost prohibitive. This means you frequently need additional architecture to keep track of where data is stored in the hash table. While this is an issue for lots of NoSQL database, DynamoDB is probably the worst offender I've used to date because of the pricing model. Amazon does offer a local version of DynamoDB you can run in development, but its an extremely clunky and very hard to integrate into any kind of continuous integration.,Again, I'll reiterate here that the pricing model for DynamoDB makes it often not cost effective for the very things you most want to use a NoSQL database for. Additionally, because DynamoDB is offered as a web service with an API you are always dealing with network latency. While this is not unique to DynamoDB it it something to keep in mind for people who may have been using a document store like Redis as a cache. It is not well suited for those kinds of operations, and you'll need to re-evaluate what is worth caching in something like Dynamo.,4,We were able to achieve our goal using Amazon – store every single email our system that has ever been sent in fluid database for long term recover without significantly impacting query times at scale. We have been unable to effectively add additional features using the data set because of the pricing structure and incurred cost involved with performing repeated scans over the dataset.,MongoDB and Redis Cloud,Amazon CloudWatch, Amazon Elastic Compute Cloud (EC2), Amazon Relational Database Service, Amazon Glacier, Amazon S3 (Simple Storage Service), Rackspace,4
Unspecified
Amazon DynamoDB
50 Ratings
Score 8.2 out of 101
TRScore

Amazon DynamoDB Reviews

Amazon DynamoDB
50 Ratings
Score 8.2 out of 101
Top Rated Award
Show Filters 
Hide Filters 
Filter 50 vetted Amazon DynamoDB reviews and ratings
Clear all filters
Overall Rating
Reviewer's Company Size
Last Updated
By Topic
Industry
Department
Experience
Job Type
Role
Reviews (1-12 of 12)
  Vendors can't alter or remove reviews. Here's why.
Richard Rout profile photo
September 26, 2018

Amazon DynamoDB Review: "DynamoDB is a great NoSQL storage solution"

Score 9 out of 10
Vetted Review
Verified User
Review Source
We use Amazon DynamoDB as a scalable solution for NoSQL related storage of data. It has the benefit of still requiring a schema so it can guarantee your data shape, but it's not as loose or flexible as a JSON database.
  • Scalable data storage
  • Solid DB schema
  • Amazon's reliability
  • Not as flexible as something like Firebase
  • Has a learning curve
  • Ties you into AWS infrastructure
It's no replacement for a SQL database, but if you want a NoSQL data storage solution with some rigidity, it's the one to go for.
Read Richard Rout's full review
Alan Balasundaram profile photo
February 05, 2018

Amazon DynamoDB Review: "DynamoDB - NoSQL with NoManagement"

Score 10 out of 10
Vetted Review
Verified User
Review Source
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.
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.
Read Alan Balasundaram's full review
AYUSH VERMA profile photo
May 03, 2018

Amazon DynamoDB Review: "NoSQL is DynamoDB. Always."

Score 9 out of 10
Vetted Review
Verified User
Review Source
Amazon DynamoDB is just the best NoSQL database. I really love the interface and scalability. The best part is vertical scaling. It's just very affordable and making queries is very easy. Using Amazon's Boto3 API is a good source for proxying queries and requests. Third party module and support are good too. I am really using because they are adding new indexes to the table, making it fast and intuitive for prototyping.

I feel they lack Amazon's strong type checking. So I feel they need to work a bit on this part. I've also used DynamoDB on the local system but they need to add more flexibility to the local system. Overall, I feel if you are planning 1 million/min queries then it's perfect for your usage.
  • The usage of hash and range keys to retrieve flat objects is a plus
  • Very easy usage with CloudFront and Elastic Beanstalk.
  • Using Amazon CloudWatch monitoring on Amazon DynamoDB is always a good point.
  • I feel they need to improve in strong type checking
  • The relational database is tough to migrate so this might be a no for you.
  • I feel the local setup is a good idea for testing but some improvements are sorely needed.
I feel when you are using very large data sets and high query parameters then it is surely a good idea. So just go for DynamoDB. It has a beautiful API to talk to it. So, AWS DynamoDB is always a plus over other NoSQL.
Read AYUSH VERMA's full review
Anudeep Palanki profile photo
July 24, 2017

Amazon DynamoDB: "Limited SaaS solution that integrates seamlessly into Amazon ecosystem"

Score 8 out of 10
Vetted Review
Verified User
Review Source
We made a transition to using DevOps at our organization and AWS is our choice of cloud provider. For a new micro service we built, we need a NoSQL database, that provides basic querying capability and requires minimum maintenance. Considering that Amazon offers DynamoDB as software as a service, it is a de-facto choice for us. It is being used across departments for various micro services. Understanding the querying capability is critical in selecting a database and DynamoDB fits into a use case where we need to query the nested array within the first layer of JSON objects.
  • Security and managing infrastructure are the first reason why we selected DynamoDB. It takes quite an effort to set other NoSQL databases up in EC2 instances. Since DynamoDB offers single click table (Collection equivalent in MongoDB) setup, it's pragmatic to give this a first shot.
  • It provides decent querying capabilities with excellent documentation. If you have a JSON structure that's relatively flat (not more than 2 nested JSON objects) that needs querying, DynamoDB would be a great choice for you.
  • Neat CLI API that allows for easy setup in a local development environment would make the life of a developer a breeze. This again brings the benefit of having great documentation.
  • Better querying capability, we had a requirement where we wanted to index and query nested arrays. For example: our sample data structure: {a: [{b: ['array of interest' ]}]}. DynamoDB does not provide neat way to query the 'array of interest'. Hence we had to shift few of our Databases from DynamoDB to Postgres.
  • DynamoDB does not offer any sort of database functions or triggers that would help manipulate the data before performing a transaction. This is key for part of our NoSQL datastore. For example: we wanted to manually maintain consistency of order variable in a JSON array i.e. if we add an element to middle of the array, the order of rest of the elements should shuffle within a single transaction. This functionality leaves something to be desired from DynamoDB.
  • Transaction management is something that DynamoDB does not offer. For example: if we want to perform a read and write within a same transaction, DynamoDB does not offer this capability. Hence, DynamoDB is not a great fit for highly concurrent environment.
Amazon's DynamoDB is very well suited for:
  • Applications with a relatively flat data structure.
  • Relatively simple querying on data.
  • Scenarios where the developers do not have time to manage the database.
Less appropriate if the data:
  • Structure is complex and has object depth beyond 2 layers.
  • Requires indexing and querying on nested arrays.
  • Requires executing multiple queries within a single transaction.
Read Anudeep Palanki's full review
Justin Schroeder profile photo
October 13, 2017

Amazon DynamoDB Review: "An expensive coffin for you NoSQL data."

Score 4 out of 10
Vetted Review
Verified User
Review Source
We use dynamodb for to store and track millions of email messages sent by our sass product. Each email is unique, and in order to maintain a full record of our transactions with clients, we store, and recall each message that was ever sent using dynamodb. Because of the sheer scale and data size requirements it makes it very difficult to use traditional methods of recall, especially when you want the actual text of the email to be part of the database and not stored in offline storage.
  • Recall on primary hashes is very fast, with HTTP latency over the network we were regularly able to call up records in the 20ms range from a database of millions of records
  • Like other NoSQL databases Dynamo lets you easily and quickly add fields to each record without having to define a full schema.
  • Pricing is quite affordable as long as you are efficient with your queries. You really need to be doing hash lookups rather than scans since Amazon charges you per record accessed.
  • Query "language" leaves much to be desired. If you're coming from a database like MongoDB or SQL you'll find it extremely difficult to get data back out of the system without breaking the bank.
  • Because querying is poor, often the only way to get data out of arbitrary fields is by scanning the records – but the pricing model for this is cost prohibitive. This means you frequently need additional architecture to keep track of where data is stored in the hash table. While this is an issue for lots of NoSQL database, DynamoDB is probably the worst offender I've used to date because of the pricing model.
  • Amazon does offer a local version of DynamoDB you can run in development, but its an extremely clunky and very hard to integrate into any kind of continuous integration.
If you're absolutely locked into the amazon ecosystem and don't want to go through the work of having your own db instances – then this might be a good option for you.
Read Justin Schroeder's full review
No photo available
September 05, 2017

Amazon DynamoDB Review: "DyanmoDB - Helps you scale"

Score 8 out of 10
Vetted Review
Verified User
Review Source
My first use of Amazon DynamoDB was to create an audit log of user actions for our application. Since then, our team has also used Amazon DynamoDB to create a metric collection tool. Clearly SQL is not a great option for these types of data collection. Clearly the biggest problem Amazon DynamoDB solves is scalability. There is much less management required than with the rest of AWS offerings.
  • Amazon DynamoDB is infinitely scalable. It is fast and Amazon automatically allocates more resources.
  • No predefined schema is required. This ensures flexibility.
  • Minimum administrative cost since Amazon manages all that. This works for small companies since you don't need a DevOps headcount.
  • It's a NoSQL database. That means you lose all the capabilities of a traditional RDBMS model. You can't do joins to query data and you lose ACID properties.
  • DynamoDB does not support multiple indices. That means for certain queries, you need to do full table scans which is not desirable. There are work arounds for this.
  • The provisioned throughput doesn't degrade gracefully. That means that once you hit the limit, the requests are denied. It's tricky to come up with the limits of your application.
If you start with Amazon DynamoDB, you are over optimizing for the future. In my opinion, use Amazon DynamoDB only when SQL can not handle the load of your application.
Read this authenticated review
No photo available
September 14, 2017

Amazon DynamoDB Review: "Easy data storage but at what cost?"

Score 3 out of 10
Vetted Review
Verified User
Review Source
My company utilizes DynamoDb for storage of site traffic data for sites hosted on our product. We felt that a NoSQL solution from Amazon would be a great fit to store a massive amount of data because our already tightly integrated AWS hosted solution. This would solve the large problem of this data living in a standard SQL database which were increasingly becoming less performance.
  • Speed of data inserts.
  • Quick setup of tables and integration into code.
  • Automated system management
  • Ease of use, I had to search several non-Amazon tutorials to figure out setup.
  • Integration into RDBMS would be a great improvement. Currently to move data around you have to export it and reimport into your destination. You could use Amazon Data Migration services - but not very straight forward.
  • You only have once instance. If you want to group tables into a "database", you cannot do that.
Storage of data such as logs, where the data does not needed to be manipulated much or at all. The tables would need to be very simplistic. It would be less appropriate for complex systems since the ability to modify data is limited.
Read this authenticated review
No photo available
March 21, 2017

Amazon DynamoDB Review: ""Want to develop websites quick and scalable - use Dynamo DB""

Score 8 out of 10
Vetted Review
Verified User
Review Source
DynamoDB - A no SQL database has wonderful use cases. We use DynamoDB for our internal projects, and it is used widely across all our teams in their projects. The major business problem that DynamoDB achieves is that - the AWS SDK that is used to access DynamoDB programmatically is very user-friendly and easy to understand, however big and complex a web application is designed, all it needs is a basic CRUD operation and the SDK handles it very effectively. I think instead of spending hours with SQL DBs, dealing with JDBC/ODBC drivers, special clients, I think DynamoDB is a best alternative for quick and fast paced development.
  • Quick CRUD operations
  • Easy to maintain and manage
  • Cost Effective
  • Nothing much in particular, however I feel it would be nice if it provides additional features like pre-defined templates, quick user guides in the console itself directly.
Amazon DynamoDB is well suited for quick development of web applications and having DynamoDB as a backend database.
Read this authenticated review
Adam Lauer profile photo
May 06, 2016

Amazon DynamoDB Review: "Dynamo: Great benefits with hidden costs"

Score 6 out of 10
Vetted Review
Verified User
Review Source
It is a great way to store vast amounts of data for quick retrieval. Along with new features added to it like global secondary indexes, automated backups, and dynamo streams, it becomes a great cheaper alternative to SQL. We use it to hold any data we need stored with high reliability while still being able to access it sub second.
  • Fast retrieval
  • Auto scaling to control costs
  • Query and scanning allow for different use cases
  • Can get very expensive very fast
  • Sharding and hot spotting are hidden problems that can cause ALOT of head ache
  • Not relational or transactional at all
It is best for high demand over short periods of time and then being scaled down to save costs. This is kind of a pay for what you need model. This falls short though because while you can scale up unlimited you can only scale down 4 times a day which can be a limitation for some.
Read Adam Lauer's full review
Jordan Bayles profile photo
October 09, 2015

Amazon DynamoDB Review: "DynamoDB: a pain in the ass worth it for some use cases"

Score 8 out of 10
Vetted Review
Verified User
Review Source
Amazon DynamoDB is utilized by my company on a client-by-client basis to solve issues with responsiveness. We use it in conjuction with Amazon CloudSearch to provide extremely fast lookup and modification of entities that would otherwise be difficult to retrieve through a more traditional relational database (such as our current relational database at my current client, PostgreSQL).
  • Amazon DynamoDB excels at quite, intuitive object retrievals. The usage of hash and range keys to retrieve flat objects means it's easy to understand what you are going to get and how to map out objects into entities in your data access layer.
  • Amazon DynamoDB is great at adding new indexes to a table, making it fast and intuitive for prototyping.
  • The ability to use Amazon CloudWatch monitoring on Amazon DynamoDB is very helpful for managing data analysis and discovering issues without a large investment.
  • Because of the lack of relations in AmazonDynamoDB, mapping very complex objects that you would typically decompose into related entities is difficult. Amazon DynamoDB is typically not great for this use case.
  • Amazon DynamoDB doesn't do strong type checking (there is typing, but it's relatively limited), so depending on your language you may have to expend some effort to properly map an Amazon DynamoDB object to a programmatical entity.
  • Depending on how much need you have for Amazon DynamoDB's performance, it can be a major pain to maintain... especially if you also have a relational database. In my current project, we utilize Amazon DynamoDB alongside PostgreSQL and entities live in one, the other, or both as appropriate. Synchronizing the database is a pain point.
How performant does my solution need to be? Amazon DynamoDB is very fast.
What is the total scope of my entities? Do they need to be relational? If they serialize well as a flat entry, Amazon DynamoDB is a great choice.
Read Jordan Bayles's full review
No photo available
August 19, 2016

Amazon DynamoDB Review: "DynamoDB works great for small development team"

Score 9 out of 10
Vetted Review
Verified User
Review Source
DynamoDB is used by IT department in our organization. It is used when we need a no sql database and are using MySQL as a relational database. DynamoDB provides high speed read and write so we use it where we have heavy read and writes in order to make our page faster. This is helping to make our application faster.
  • No need to worry about hosting and ease of scaling and operations
  • Distributed and flexible as Amazon DynamoDB does not have a fixed schema
  • Based on load, options to increase throughput
  • 64KB limit on row size and 1MB limit on querying
  • Increasing throughput is expensive
  • Secondary indexes are not supported
DynamoDB is well suited when you have small development team and want ease of scaling and operations. Since it is hosted by Amazon, it provides a fully managed service. It provides great read and write for simple queries. When you have complex queries, I think this is not well suited. We need to remember this is not suited for a relational database.
Read this authenticated review
No photo available
October 09, 2015

Amazon DynamoDB Review: "DynamoDB"

Score 10 out of 10
Vetted Review
Verified User
Review Source
We use DynamoDB as our primary NoSQL database. It allows us to create databases with ease and maintain them without much work on the part of our development team. The cost of using DynamoDB is justified by the amount of time that our developers have saved, allowing us to focus on creating the product itself, not maintain infrastructure.
  • Completely managed DB solution
  • Performance
  • Flexible data model
  • The document oriented features are just starting out, and we'd love to see them develop to match MongoDB features.
  • Running out of provisioned throughput results in error responses. Better options for automatic scaling.
DynamoDB is an excellent NoSQL database and has met most of our needs. Some data models need more rigidity and a relational database is more appropriate. We have also found MongoDB better suited for situations where complex JSON needs to be modified.
Read this authenticated review

Feature Scorecard Summary

Performance (2)
8.0
Availability (2)
7.5
Concurrency (2)
8.5
Security (2)
9.0
Scalability (2)
9.5
Data model flexibility (2)
5.5
Deployment model flexibility (2)
10.0

About Amazon DynamoDB

Amazon DynamoDB is a NoSQL database, from Amazon Web Services.

Amazon DynamoDB Technical Details

Operating Systems: Unspecified
Mobile Application:No