We use the solution to handle structured data. So, whenever you need to make a runtime call and send any data, you can create it. To store the data exclusively, we need to use granularity. You must integrate with Lambda to process and store the records, whether they're coming from Connect or elsewhere.
Professional Freelancer at Open for all
A stable database solution to handle structured data
Pros and Cons
- "The best feature is NoSQL."
- "The solution could be cheaper."
What is our primary use case?
What is most valuable?
The most unbelievable feature is NoSQL. Unlike traditional SQL databases, DynamoDB doesn't require predefined schemas. You don't have to design the schema, which can be limiting in SQL databases. Additionally, in SQL databases, modifying the schema to add new columns can be confusing and must be done before adding new data. DynamoDB allows for flexibility in adding new attributes to your data at runtime without altering the schema. This makes data processing more efficient and customizable. The performance of DynamoDB is highly configurable, depending on the provisioned Read Capacity Units and Write Capacity Units that you allocate to your tables.
What needs improvement?
The solution could be cheaper.
For how long have I used the solution?
I have been using Amazon DynamoDB for 6 years.
Buyer's Guide
Amazon DynamoDB
December 2024
Learn what your peers think about Amazon DynamoDB. Get advice and tips from experienced pros sharing their opinions. Updated: December 2024.
824,053 professionals have used our research since 2012.
What do I think about the stability of the solution?
The solution doesn't break down.
What do I think about the scalability of the solution?
The availability is very good. It is also scalable.
What's my experience with pricing, setup cost, and licensing?
The solution is expensive.
What other advice do I have?
DynamoDB is one of the services that 90% of people use on AWS.
Let's say we are developing an application using AWS. For the backend data storage, DynamoDB is the best solution AWS offers for NoSQL databases. If SQL is needed, then RDS is the way to go.
You must understand the basic CRUD operations of databases, along with the APIs. Knowing how to create a schema, determining primary and foreign keys is essential. The AWS documentation provides detailed guidance on these.
DynamoDB supports multiple areas and has good monitoring and security features. AWS CloudWatch can be used for monitoring, and third-party tools like Datadog or additional integration are available for functionality.
Overall, I rate the solution a nine out of ten.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Amazon Web Services (AWS)
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Last updated: Apr 24, 2024
Flag as inappropriateAWS Engineer at Cravita Technologies India Private Limited
Used to store data in the form of JSON, but its efficiency and performance should be faster
Pros and Cons
- "We directly pass the JSON value to Amazon DynamoDB, which is why Amazon DynamoDB is faster than relational databases."
- "The solution's efficiency and performance should be faster than other databases."
What is our primary use case?
Amazon DynamoDB is used to store data in the form of JSON. I use AWS Lambda to insert data into Amazon DynamoDB.
What is most valuable?
In a relational database like MySQL, we convert values, like name, age, or other details about a person, into tables. We directly pass the JSON value to Amazon DynamoDB, which is why Amazon DynamoDB is faster than relational databases.
What needs improvement?
The solution's efficiency and performance should be faster than other databases.
For how long have I used the solution?
I have been using Amazon DynamoDB for six months.
What do I think about the stability of the solution?
I rate the solution a nine out of ten for stability.
What do I think about the scalability of the solution?
Amazon DynamoDB is a scalable solution that can store more data than other databases. AWS manages Amazon DynamoDB, such as increasing the storage, RAM, or CPU of its actual server. We need not worry about the solution's scalability. The solution's availability is 24/7.
How are customer service and support?
The solution’s technical support is good.
Which solution did I use previously and why did I switch?
I previously used Amazon RDS.
How was the initial setup?
The solution’s initial setup is easy.
What about the implementation team?
We can deploy Amazon DynamoDB in one to two hours.
What's my experience with pricing, setup cost, and licensing?
The solution was free to use one month ago, but now it is a paid service. Amazon DynamoDB is not an expensive solution.
What other advice do I have?
We can use Amazon DynamoDB for both on-premises and in the cloud.
Overall, I rate the solution a seven out of ten.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Last updated: Apr 5, 2024
Flag as inappropriateBuyer's Guide
Amazon DynamoDB
December 2024
Learn what your peers think about Amazon DynamoDB. Get advice and tips from experienced pros sharing their opinions. Updated: December 2024.
824,053 professionals have used our research since 2012.
A reliable solution with good latency and security features
Pros and Cons
- "The latency feature is precious."
- "The setup cost could be reduced. But overall, the tool works smoothly."
What is our primary use case?
The solution is being used for scaling. For instance, if your throughput is X, then automatically, we can handle two X without incurring any additional cost, which gives you leverage over the spiking nature of the customer.
What is most valuable?
The latency feature is precious.
What needs improvement?
The setup cost could be reduced. But overall, the tool works smoothly.
For how long have I used the solution?
I have been using Amazon DynamoDB for the last two years.
What do I think about the scalability of the solution?
Amazon DynamoDB is a managed database by AWS, so it handles scalability. I've seen improvements in scalability. For customer data, they replicate it three times independently of use, ensuring they can handle peak throughput at twice the usual rate. From a cost perspective, I'm charged based on the amount of data scanned and returned.
How are customer service and support?
It provides premium support for enterprise solutions and real-time assistance.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
How was the initial setup?
Integration with Amazon DynamoDB is straightforward due to clear documentation and comprehensive support.
What was our ROI?
Investing in Amazon DynamoDB has provided us with reliability and scalability, which are crucial for our operations. This has been a significant return on our investment.
What's my experience with pricing, setup cost, and licensing?
It is costly. To reduce the costs, users need to read the node in front of it. For read-heavy groups, cache optimization can help manage costs. I can't disclose specific pricing, but it's competitive compared to others in the market, and this information is easily accessible online.
Which other solutions did I evaluate?
Amazon DynamoDB stands out primarily in its managed database feature compared to other tools. While other tools like MongoDB offer similar support, DynamoDB excels in its GSI and LSI capabilities, especially in partitioning and data handling. Its reliability and security features are notable, meeting our company's data security requirements.
I would rate Amazon DynamoDB an eight out of ten, primarily for its reliability, scalability, and security features. In terms of support, I would rate it above nine, especially for enterprise solutions with premium backing that ensures real-time assistance.
What other advice do I have?
DynamoDB doesn't directly support AI-driven applications, but it can certainly be used as a backend database for such applications.
I would rate Amazon DynamoDB an eight out of ten, primarily for its reliability, scalability, and security features.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Last updated: Jun 11, 2024
Flag as inappropriateSoftware Engineer at Readyly
A stable and easy-to-deploy tool that provides features that enable faster queries
Pros and Cons
- "The best feature of the solution is that it is a NoSQL database."
- "Sometimes when we query through the UI, it takes a long time to get the results."
What is our primary use case?
We use the product as our database. It is a NoSQL database. We can use DynamoDB as our database if we don't need SQL.
What is most valuable?
The best feature of the solution is that it is a NoSQL database. Many tables make a database. When we define a table, we have to define the schema of the table. For NoSQL databases, we don't need to define it. The table accepts any input. Each row will have its own column. We do not have to define the columns in advance. We can add columns to each row and push the data. We can query as much as we want.
SQL databases exist to speed up the queries. This advantage is not present in NoSQL databases. We must query databases very fast. To help with the process, the product provides secondary indexes. Secondary indexes are a copy of the table. The table is constructed in such a way that it can be used to support one query. Whenever we query a particular item, if we give the name of the secondary index in the query, the query will be faster.
The solution supports around 20 global secondary indexes. We can just create a table without thinking about its format. When our application develops, we will have more and more queries to do. We might realize later that the initial table does not support the query and that we have to change the schema of the table. To do so, we will have to change the structure of the entire table for one query. In DynamoDB, when we encounter a new query, we can just create a new secondary index for that to an existing table. We wouldn’t have to modify the main table. The query will be fast when we query the secondary index, which is a copy of the main table. Through the production process, we don't have to be concerned about modifying the main table.
What needs improvement?
The product allows us to query for items in the UI. Sometimes when we query through the UI, it takes a long time to get the results. I would like it if the results were faster.
For how long have I used the solution?
My organization has been using the solution for more than one year.
What do I think about the stability of the solution?
The product is stable. We have had no issues. We always get the data.
What do I think about the scalability of the solution?
The solution is scalable. Around four people were using the product before. Now, only two people use it in the organization.
Which solution did I use previously and why did I switch?
We were using MongoDB. It was outside AWS, and we wanted to get everything inside AWS. So we chose DynamoDB. I prefer DynamoDB over MongoDB.
How was the initial setup?
The solution is deployed on the cloud. The initial setup is very easy.
What other advice do I have?
If we go through the main DynamoDB, it will be a scan operation. It will scan through each record. If we set up a secondary index for a particular query type, we can get it fast. It is the fastest way to get it.
In a normal database, if we launch something into production and want to add one more feature, but the feature needs an additional query, and the existing table cannot perform the query fast, we will have to remodel the entire table. It will interrupt the process. In DynamoDB, we can just add one more secondary index and route that query to the secondary index.
If someone wants to use the solution, they should go ahead. It is as good as anything else. Overall, I rate the product a nine out of ten.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
AWS Consultant at HCLTech
Effortless data configuration with JSON writing capabilities and good paid support
Pros and Cons
- "DynamoDB is easy to configure, easy to use, and allows for writing data in JSON format."
- "Support is better if using a paid version."
What is our primary use case?
Personally, I use DynamoDB for creating my Proof of Concepts (POCs) for testing DynamoDB functionalities. It's not used extensively by me but is likely used by the database team.
What is most valuable?
DynamoDB is easy to configure, easy to use, and allows for writing data in JSON format.
What needs improvement?
I have not used it extensively at a larger scale, so I cannot provide feedback on improvements.
For how long have I used the solution?
I have been using DynamoDB for about four years.
What do I think about the stability of the solution?
I haven't used DynamoDB in large volume, so I haven't faced any stability issues during my usage.
What do I think about the scalability of the solution?
I haven't used DynamoDB for large scale data handling. I've used other solutions like MongoDB and S3 for such purposes.
How are customer service and support?
Support is better if using a paid version. I gave the support a rating of seven out of ten.
How would you rate customer service and support?
Neutral
Which solution did I use previously and why did I switch?
What other advice do I have?
I would recommend DynamoDB to other people.
I'd rate the solution eight out of ten.
Disclosure: My company has a business relationship with this vendor other than being a customer:
Last updated: Nov 1, 2024
Flag as inappropriateDevOps Engineer at a consultancy with 51-200 employees
Has efficient data modeling functionality and an easy setup process
Pros and Cons
- "The technical support team is always available to help us."
- "If the database is kept running continuously, extra costs will be incurred. This particular area needs enhancement."
What is our primary use case?
We have enabled a state-locking mechanism in Terraform, so we store our keys in DynamoDB.
What needs improvement?
If the database is kept running continuously, extra costs will be incurred. This particular area needs enhancement.
What do I think about the stability of the solution?
I rate the platform's stability a nine out of ten.
What do I think about the scalability of the solution?
I rate the platform's scalability a nine out of ten.
How are customer service and support?
The technical support team is always available to help us.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
I worked with MongoDB and Firebase earlier. I switched to DynamoDB because of the company and client requirements. Atlassian and Google already own the other two services. I used MongoDB for a machine learning project and Firebase for an Android-level project.
How was the initial setup?
The initial setup process is easy.
What other advice do I have?
I have yet to use DynamoDB for real-time data processing in my applications. However, in Terraform, we utilized it to create multiple infrastructures. Terraform has a state-locking feature, which prevents simultaneous data updates from multiple users. For example, triggering a data update one minute before you do will lock your access until my update is completed. We implemented this feature for telco data monitoring purposes.
Data modeling in DynamoDB is simple and easy to use in our cases. You have primary and secondary tables, and then you can easily model the data. Whatever you use to access the non-structural data is how you get the storage, i.e., API gateways, workflows, and microservices that need to communicate with each other. This is where the database comes into the picture.
I advise others to be thoughtful and careful when using the platform because if you keep the database running continuously, it might cost you a lot of money.
I recommend Amazon DynamoDB to others and rate it a nine out of ten.
Which deployment model are you using for this solution?
Public Cloud
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Amazon Web Services (AWS)
Disclosure: My company has a business relationship with this vendor other than being a customer:
Last updated: Apr 11, 2024
Flag as inappropriateEnterprise Architect at Skynet Belgium
Effective for simple scans and avoids the need for complex point searches and work well for a single T value stream
Pros and Cons
- "DynamoDB is a key-value database, and it's valuable if you have simple scan queries and don't need to do point searches."
- "Maybe the documentation could be improved a bit. Sometimes, it's a little confusing, and people can easily be mistaken about DynamoDB."
What is our primary use case?
One of our customers has been using DynamoDB for four years. They are using it to store long strings of data, particularly experiences shared by people in nature domains, such as recreation zones.
These experiences could be related to hiking, swimming, observing nature, or anything else. People can send in short messages, and those messages are stored in DynamoDB.
How has it helped my organization?
DynamoDB is a service by Amazon. It is what it is.
What is most valuable?
DynamoDB is a key-value database, and it's valuable if you have simple scan queries and don't need to do point searches. For example, if you want to see what happened on Wednesday afternoon at two o'clock and correlate that with what happened on Thursday morning at eleven o'clock, DynamoDB can handle those queries.
However, if you need to do more complex queries that involve multiple indexes or multiple keys, you're better off using an operational database. DynamoDB can still be a good choice for single-T value streams and smaller datasets, but it does have a limitation of four KB for a record, which can be restrictive.
Essentially, for those with some experience in the field, we could call it an index sequential access method.
What needs improvement?
Maybe the documentation could be improved a bit. Sometimes, it's a little confusing, and people can easily be mistaken about DynamoDB.
That's the main thing, the documentation could be a little more explicit or a little more elaborate. But that's it. It's a key-value system, and it works well for what it is. The only thing I can see that could be improved is the documentation.
For how long have I used the solution?
We have been using it since 2019, so for four years now.
What do I think about the stability of the solution?
The service itself is stable. We haven't found any faults in DynamoDB. It is what it is. I would have developed it or designed it with some more resilience in terms of flexibility and data, but the thing is stable. I've never had a crash.
What do I think about the scalability of the solution?
It is scalable up to its limits. DynamoDB can be used by all types of businesses, from small startups to large enterprises.
How are customer service and support?
We've always gotten help when we've called, so in my case, customer service and support are good.
We don't have any complaints about that or any information to provide on that. We always get a response within the contractual parameters, so everything has been okay for us.
How would you rate customer service and support?
Positive
Which solution did I use previously and why did I switch?
We have a few DynamoDBs, and we are also planning to restore unstructured data next week.
In 1982, which is now 40 years ago, we were working with an IBM system called ISAM and VTAM. Those very old mainframe systems were exactly what DynamoDB is today.
DynamoDB is a key-value storage device for a system. You have a key, which is one, two, three, and you have values, such as apples, orange juice, pears, whatever.
You can have a data construction or design in which you have one value with one key, or you could have a data structure designed for your application with a specific type of data. And then, you have to set up your DynamoDB accordingly. So, again, it's like comparing what is better: white bread, whole wheat bread, or slightly less white bread. It's all still bread.
How was the initial setup?
Any service in AWS is relatively easy to deploy. The deployment time for any variable GB is about a second.
What about the implementation team?
One person can do the deployment. The service itself doesn't require maintenance. It's the content that needs attention. It's like any data store or any form. If you put garbage or corrupt data in it, you will get a corrupted result. So, the service itself is flawless. It works exactly as advertised.
But if you store the wrong data in it, with the wrong key and the wrong values, you will get the wrong results. So, the maintenance is not so much in DynamoDB itself. The maintenance is in your data stream.
We have a cloud engineer who takes care of running, upgrading, and supporting about 60 to 70 DynamoDBs in the physical sense, although that might be a bad term to use with cloud services. And he does it all by himself. So, one person can, in the current state of affairs with cloud services, oversee quite a large number of services.
What's my experience with pricing, setup cost, and licensing?
Compared to a high-end relational database, it's cheap. But then it doesn't have the capabilities of a high-end relational database because it's not meant to be a high-end relational database.
So, it's like looking at what the price difference is between a scooter and a Bentley or a GTR. They are means of transport that are in a different league altogether. So, you don't compare a Bentley with a scooter.
The pricing is based on usage. DynamoDB is one of the services within Amazon Web Services. So, the pricing for anything in cloud services is based on usage and volume. So, the more you use it and the more volume you pump into it, the more the price will go up. But that is the normal business case for any storage service in the cloud.
What other advice do I have?
If you've done your data architecture and analyzed what you'll be using your data for, where you'll be using it, and you have your data flows and conceptual model, and you see that it's a sequential storage of keys with values attached to it, DynamoDB is a valuable and valid option.
However, don't use it just because it's easy. You should use it when you don't need some of the other aspects of a relational database, like joining, multiple endpoints, and comparing or having a key on multiple datasets. If that's your use case, if you want it for your entire application, don't use DynamoDB.
But if it's for something simple, like a record of sales or events happening on a particular day or moment, please do use DynamoDB. It all comes down to the quality of your data architect.
I would give it a ten in some cases and a zero in others. For example, if you want to have a research database where you need multiple perspectives on the same set of data, and you try to do that within DynamoDB, you're going to have trouble.
But if you have a log and you want to do some statistical research on, for example, the sales in a supermarket, which are a simple timeline with the cash register data, timestamp, value, and then the goods, that's all very simple, key-value, and you can use DynamoDB for that.
So, it depends on the use case. For the use cases that you're using it for, you would give it a ten. So, the solution is excellent for the purpose you're using it for.
For my use cases, I would rate it an eight out of ten. We chose DynamoDB. We could have done the same thing with a relational database, but then again, you wouldn't choose a Bentley Continental GTR just to go to the grocery store. You can go to the grocery store on a scooter.
We decided against the relational database because of the overhead and cost, and we went with DynamoDB instead. Because the dataset is just a key timestamp and some values, a key and a value, we can restore them sequentially, which is exactly what DynamoDB can do without any problems.
Disclosure: My company has a business relationship with this vendor other than being a customer: Integrator
It's ease of operation, scalability and predictable performance are valuable features.
What is most valuable?
The ease of operation. It's so easy to scale it up and down. And it delivers predictable performance, as promised.
How has it helped my organization?
We are using DynamoDB in two projects now. One for storing large amounts of file metadata, and one for storing small amounts of session data. The fact that it is so easy to create tables and provision for known throughput saved us a lot of time, especially because we are deploying multiple environments and multiple regions.
What needs improvement?
DynamoDB doesn't provide server-side encryption, so we had to do it manually.
Any replication to other regions requires writing code. It's not so bad, but would be better to get a solution out of the box.
We store some protected patient information in DynamoDB, and in order to keep it HIPAA-compliant, we have to encrypt it at rest. Some services such as S3, Redshift and SQS will do the encryption on the server side, but with DynamoDB, the client application had to do the encryption before writing to the DB, and has to decrypt when reading. This means that we need to manage encryption keys: we need to store then securely and rotate them periodically, which is extra coding and complexity.
As for cross-region replication, AWS offers a way to do this using DynamoDB streams and Lambda, whereas other databases such as postgresql enable to configure replication without coding.
For how long have I used the solution?
I have used it for one year.
What was my experience with deployment of the solution?
We have not encountered any deployment issues. It's straightforward.
What do I think about the stability of the solution?
We have not encountered any stability issues, but you should expect to get exceptions when you exceed the provisioned throughput. This is okay and it is by design. You need to handle it by retries with exponential backoff.
What do I think about the scalability of the solution?
We have not encountered any scalability issues.
Which solution did I use previously and why did I switch?
We used PostgreSQL. We switched to DynamoDB for the scalability and ease of deployment and operation.
How was the initial setup?
Initial setup was straightforward.
What about the implementation team?
An in-house team implemented it.
What was our ROI?
No time wasted on provisioning databases.
What's my experience with pricing, setup cost, and licensing?
Pricing depends on volume and provisioned throughput. When low, the price is extremely low. But for really large amounts of data, it can be expensive. Make sure you keep there only data you really need available fast.
Which other solutions did I evaluate?
We evaluated Cassandra but chose to abandon it because it was harder to configure correctly and scale.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
Download our free Amazon DynamoDB Report and get advice and tips from experienced pros
sharing their opinions.
Updated: December 2024
Product Categories
Managed NoSQL DatabasesPopular Comparisons
Microsoft Azure Cosmos DB
Amazon DocumentDB
Amazon Neptune
Google Cloud Bigtable
Amazon Timestream
Neo4j AuraDB
Oracle NoSQL Database Cloud
Amazon Keyspaces
Buyer's Guide
Download our free Amazon DynamoDB Report and get advice and tips from experienced pros
sharing their opinions.