Skip to main content
TrustRadius
Amazon DynamoDB

Amazon DynamoDB

Overview

What is Amazon DynamoDB?

Amazon DynamoDB is a cloud-native, NoSQL, serverless database service.

Read more
Recent Reviews

A perfect cloud DB

9 out of 10
September 28, 2023
Incentivized
Our integration and Data-analytics platform uses AWS services and Amazon DynamoDB is one of the key service. All our data storage are …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Popular Features

View all 7 features
  • Availability (70)
    9.4
    94%
  • Scalability (69)
    9.4
    94%
  • Performance (69)
    9.2
    92%
  • Security (70)
    9.0
    90%

Reviewer Pros & Cons

View all pros & cons
Return to navigation

Pricing

View all pricing

Provisioned - Read Operation

$0.00013

Cloud
capacity unit per hour

Provisioned - Write Operation

$0.00065

Cloud
capacity unit per hour

Provisioned - Global Tables

$0.000975

Cloud
per Read Capacity

Entry-level set up fee?

  • No setup fee
For the latest information on pricing, visithttps://aws.amazon.com/dynamodb/pricing…

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services
Return to navigation

Features

NoSQL Databases

NoSQL databases are designed to be used across large distrusted systems. They are notably much more scalable and much faster and handling very large data loads than traditional relational databases.

9.2
Avg 8.8
Return to navigation

Product Details

What is Amazon DynamoDB?

Amazon DynamoDB is a NoSQL, fully managed, serverless database boasting limitless scalability and single-digit millisecond latency performance enabling customers to develop modern, microservice-based applications through a simple API. DynamoDB’s fully-managed service includes broad compliance standards, security integration with AWS Identity and Access Management and numerous disaster recovery services. With DynamoDB Global Tables, customers are offered a 99.999% highly available, multi-Region, multi-active database supporting local reads and writes for globally distributed users. DynamoDB provides cost management features such as scale-to-zero, Time to Live (TTL) for aging data out, and multiple pricing models including a free tier.

Amazon DynamoDB Features

NoSQL Databases Features

  • Supported: Performance
  • Supported: Availability
  • Supported: Concurrency
  • Supported: Security
  • Supported: Scalability
  • Supported: Data model flexibility

Additional Features

  • Supported: Amazon DynamoDB is serverless allowing customers to scale instantly as workloads increase while providing an on-demand billing mode where they only pay for the resources consumed.
  • Supported: Amazon DynamoDB provides up to a 99.999% SLA with zero downtime or maintenance windows.

Amazon DynamoDB Screenshots

Screenshot of Amazon DynamoDB in the AWS Console

Amazon DynamoDB Videos

AWS re:Invent 2019: Data modeling with Amazon DynamoDB (CMY304)
What is Amazon DynamoDB?

Amazon DynamoDB Technical Details

Deployment TypesSoftware as a Service (SaaS), Cloud, or Web-Based
Operating SystemsUnspecified
Mobile ApplicationNo
Supported CountriesGlobal, North America, South America, Europe, Africa, Asia, Australia
Supported LanguagesEnglish, German, Spanish, Italian, Japanese, Portuguese, Chinese, Korean, French, Mandarin Chinese

Frequently Asked Questions

Amazon DynamoDB is a cloud-native, NoSQL, serverless database service.

MongoDB Atlas, Redis™*, and Azure Cosmos DB are common alternatives for Amazon DynamoDB.

Reviewers rate Deployment model flexibility highest, with a score of 10.

The most common users of Amazon DynamoDB are from Enterprises (1,001+ employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(203)

Attribute Ratings

Reviews

(1-25 of 29)
Companies can't remove reviews or game the system. Here's why
Richard Rout | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We use Amazon DynamoDB as a scalable solution for NoSQL related storage of data. It can take some getting used to how to work the primary + secondary indexes to get the most benefit out of it, but for simple lookups and a basic data store it is a fantastic solution that allows us to remain agile and deploy quickly.
  • Scalable data storage
  • Solid NoSQL database
  • Amazon's reliability
  • Serverless solution
  • Not as flexible as something like Firebase
  • Has a learning curve for indexes
  • Ties you into AWS infrastructure
It's no replacement for a SQL database and the syntax can be a little hard to understand. There is documentation but sometimes you find yourself looking through Stackoverflow posts to figure out how to do basic selects, queries or updates. But if you want a NoSQL data storage solution and are already using the AWS ecosystem that's easy to create, this works perfectly fine.
Score 9 out of 10
Vetted Review
Verified User
We use DynamoDB for our low-latency data access for internal web-apps that require quick real-time information. It’s quite flexible for micro services and while it can be used in many different use cases we only use it for internal web apps, but could be recommended for mobile apps as well.
  • Auto-scaling is done almost instantly, it’s magical.
  • Works really well with serverless apps on AWS Lambdas
  • It’s surprisingly transactional and support streams processing
  • It’s not cheap at all. You must be careful with billing
  • Not for large data
  • Backup restoration is slow.
It’s great for server less and real-time applications. It would be great for gaming and mobile apps. However, if you need relational database and have fixed budget, do not use it. While budget can be managed, you need to be careful. Also this is not a tool for storing big data, there are other wide-column database types you could use for it ins the ad
Score 10 out of 10
Vetted Review
Verified User
Incentivized
The most beneficial aspect of Amazon DynamoDB is that it is completely managed by AWS. The developers should concentrate solely on the creation of the application and not on the infrastructure itself.
  • fully manageable
  • i can easily monitor operation in DynamoDB
  • Secure
  • Limited Storage option
  • Estimating costs is difficult and time-consuming.
The most beneficial aspect of Amazon DynamoDB is that it is completely managed by AWS. The developers should concentrate solely on the creation of the application and not on the infrastructure itself.
October 06, 2023

Best NoSQL Database Tool

Score 8 out of 10
Vetted Review
Verified User
Incentivized
We were building Amazon Alexa Game in which we used the DynamoDB for storing the user's data and leaderboard. Integration of Amazon DynamoDB was very smooth, there are pre-built examples are available and due to it is NoSQL, we can store any type of data without generation of the schema.
  • It is NoSQL so storing data with very smooth
  • Integration of it is very smooth
  • It is Serverless so execution of it is very fast
  • Integration of it apart from Amazon ecosystem is a bit hard
  • Due to it is NoSQL, you can perform join and other operations
  • Limited Storage option
It is useful use-case by use-case. For our use case, it was the best and easiest option for the integration as well as development side. It is serverless so no need of deployment and maintenance hustle. It is easy to scale up due to the same functionality. Supports AWS Security features and just a click away for enabling it so security is good.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We are a fashion ecommerce company.
We have thousands and thousands of products in our inventory, with the use of Amazon DynamoDb it is easy and quick to fetch and insert products to the database.
Each and every information such as color, size etc is stored in the db and everything is super quick and efficient.
  • Scalibilty - At times of very high traffic, Amazon DynamoDB is very easily scalable
  • Latency is low hence product fetching and insertion is quick
  • As it works in Nosql model hence it is very flexible when compared to RDBS systems
  • Automated Backup and recovery is a complex feauture, this needs to be simple as it is one of the most important feauture
  • Transactions limit needs to be increased, currently it is around 20-25 unique items
  • Cost estimation is hard and challenging
It is well suited for applications that will handle high traffic as it is very scalable and easy to scale.
Due to its low latency, it is well suited for application that needs real time data processing like trading application.
But if, there is structured application then i would suggest them to go with Relational database approach unlike Amazon DynamoDB as it offers nosql
Score 7 out of 10
Vetted Review
Verified User
Incentivized
Dynamo DB is a respectable NoSQL database that can come handy while building web apps or mobile apps that need quick Realtime result displays. It can be powered with GraphQL for better queries as compared to Realtime data base of google. We mostly use it in cases where we might need realtime result displays in apps and web apps alongside the requirement for a little complex query that cannot be done in Google's counterpart.
  • Quick Results
  • Better Queries
  • Version management for stored/ updated results
  • Version management can be improved. It gets irritating at times
  • Limited query language as compared to some other industry rivals
  • Pricing is a little high
We have been mostly using dynamo db for scenarios covering logging, analytics, user event tracking, and chats etc. But it is not recommended for cases like information systems where complex user data is to be stored resulting in complex joins etc.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Dynamo DB is my go-to option when requirements are for NoSQL DB that can scale very fast and have the options of global tables that can be used to support bigger infrastructures with key-value storage. The best thing is that it is a managed service so there is not a lot of overhead management required to keep it up to date.
  • Scaling
  • Global tables feature
  • High performance
  • Integration with other AWS services
  • Cost can be lower.
  • Complexity of working with global tables.
  • Schema design challenges
It is the best available option for Managed NoSQL DB in AWS services offering. We like to recommend clients who are looking for HA and Redundant DB solutions that match their High-load applications and global reach, it is also easy to plan DR strategy using DynamoDB where we can automatically just replicate it to other regions.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
In our organization, we've leveraged Amazon DynamoDB in a revolutionary way: we've created a time-traveling historical database. Historians, archaeologists, and researchers often struggle to piece together the past from fragmented records, making it time-consuming and error-prone. DynamoDB changed the game.Our goal: a comprehensive historical database spanning centuries. We've digitized countless historical documents and artifacts, storing them in DynamoDB. Using DynamoDB's querying, historians can effortlessly analyze specific time periods or regions. It's like a time machine for historical data!But there's more. We've integrated DynamoDB with machine learning to fill gaps in records and predict future events, aiding archaeology and understanding ancient civilizations' trends.In essence, DynamoDB has transformed our historical research, unlocking the mysteries of the past. Thanks to DynamoDB, we're not just historians; we're time travelers!
  • Highly scalable
  • Low latency
  • Fully Managed service
  • NoSQL
  • Expensive for small workload
  • Lack of a Built-in Full-Text Search
  • It is designed for single-table queries, and joining data from multiple tables can be challenging.
Amazon DynamoDB is well suited for session management, content management systems, storing user profiles and preferences, and building event-driven architectures.It's less appropriate when Complex Queries and Joins are Extensive
Strict ACID Transactions Are Critical
Migrating from SQL Databases with Complex Schemas
Predominantly Read-Heavy Workloads with Minimal Writes
Limited Budget for Small Applications
Full-Text Search Is a Core Requirement
Izcóatl Estañol | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Since this is a NoSQL DB that is able to sustain dingle-digit millisecond response times, it is very useful to implement architectures with delightful responsive UX to all our customers. Specific use cases are around: eCommerce carts where orders' documents are being assembled in DynamoDB before going to next steps of the purchasing process; multi-user interactive interfaces can benefit from the fast response to update dashboards, and interactions; and some public signage usages for arrival/departure boards can also be used for the display part of the process.
  • Fast response
  • Availability
  • Security on rest
  • Ease of use
  • Cost model may not be easy to control and may lead to higher costs if not carefully planned
  • Indexing may be a cost culprit when not planned, because it's not included on the data costs
  • The Query Language may not fulfill everybody's expectations, as it has less features than those of competitors.
Best suited for fast interactions, with no structure on the data. The advantage of scaling it up like many other services in AWS helps on using this as a basic stone for your architecture. Since pricing is based on consumption and throughput you can play with these variables to better control your costs.

Not recommended for deploying it without carefully planning for its usage and costs, as it may become easily unpredictable. Because the indexing of the data comes with its own cost, any non-planned implementation may lead to high costs and indexes are not something that can be easily removed from an architecture once in place. Also, if your needs require a more complex implementation of a query language or multiple ways of querying for your data, then this may not be the database for you.
September 19, 2023

No SQL, Scalable Database

Score 9 out of 10
Vetted Review
Verified User
Incentivized
I use Amazon DynamoDB in my organization, EDII, to manage data across the Finance APIs.
  • AI/ML
  • User Data
  • Logs
  • SDK can be improved
  • UI can be improved
It can be used in AI/ML applications easily and integrates with other services easily.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use Amazon DynamoDBin two places.
1) Storing Information about the logs and the config data
2) Terraform state file
  • Fast Retrieval
  • Serverless
  • Excellent API
  • UI can be improved
  • Easy usable SDK
1) AI
2) Logs
3) Low Latency Application
September 18, 2023

AWS DynamoDB use cases.

RISHAB MADAAN | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We used DynamoDB both alone and in combination with AWS Lambda functions. We used DynamoDB tables to store client data and combined them with DynamoDB streams to trigger lambda functions every time the table changed. This allowed us to run functions synchronously. Another use case was to run lambda functions at a specified UTC time zone, which was again stored in DynamoDB tables.
  • Storing of Data.
  • Running lambda functions to synchronously run jobs.
  • Run asynchronous jobs.
  • Store inconsistent data.
  • It is hard to combine them with lambda functions if the job to be run will take longer than 30 seconds.
  • It has some inconsistent behavior when fargate containers are involved.
1. Amazon DynamoDB is very well suited to store data even when data is inconsistent. 2. it is incredibly easy to create and manage data through the UI console. 3. It is easy to combine with other AWS services, such as lambda functions. 4. It is less appropriate when fargate containers are involved in running jobs.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We have evaluated use cases for serverless applications ranging from simple key-value storage to complex "single table" designs for transactional data. The business requirement was to provide a straightforward, and well-performing data persistence layer for these applications, without the need of provisioning capacity. One particular use case models a language class booking system that is capable of handling bookings, cancellations of classes, and their respective seat bookings, models the teachers, teacher managers and the learners, and their actions too.
  • Low latency read and write throughput
  • Streaming data to consumers
  • Transactions
  • Secondary index management
  • Migration tooling
  • Point in time recovery performance
It is well suited for a simple serverless key/value storage where the use case is already using AWS. With careful design, it is also capable of handling ecommerce or other transactional persistence.

It is less suited for applications where data access patterns vary frequently, or flexibility is required for data queries.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use AWS dynamo Db to store key value pairs for our business logic layer. We store details like last log in date, some config values and other non relational data.

  • Integrates easily with other AWS infrastructure
  • Easy to use interface on AWS console
  • Scales easily with load
  • Integrations with orms
  • Migrations to other no sql databases
We write custom wrappers around cloud derives so within our codebase, anything non relational goes to dynamo. It’s way faster than a db query and works well with our existing vos
September 08, 2023

AWS DynamoDB Review

Score 9 out of 10
Vetted Review
Verified User
Incentivized
We used DynamoDB as our backend database. It was very effective and quick to use and we were able to get good results while using it.
  • Provides Scalability
  • Provides Access Control
  • The item size limit of 400KB is something which we faced issue with once since we had a file of around 1-2MB that wasn't getting uploaded to the DB due to this issue
DynamoDB is very suited in cases where we are unsure of the size of our database. Particularly in our case we weren't certain about our table sizes but with DynamoDB, we didn't had to worry about that since it was scalable. Also, the access control provided by DB is great and allows only people with certain access to make changes and access specific tables.
Justin Burkhalter | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
To save information on customers without having to deal with tables and columns, instead, you just pull the data from the person you want and continue. Like if a person is using a social network instead of having a table with a bunch of information we can locate customers easily.
  • Pull Information easily.
  • Fast and accessible.
  • Being a elastic.
  • Don’t see any, to be honest.
  • Maybe implementing more tools.
Where Dynamo DB is suited for companies that do not need to have specific requirements or regulations for their data. Because, especially with SQL databases, everything has to be precise. So the same goes for less appropriate is that there are those needs that have to be met. Then I would go with MySQL.
Arjun Komath | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Amazon DynamoDB is currently being used as one of our primary databases for several mobile and web applications. Key factors that directed us to choose Amazon DynamoDB are:

  • It's part of the AWS family, and our entire platform is built on AWS and using a solution from AWS itself was one of the top priorities.
  • Scalability and availability - Since its a managed solution we do not have to worry about scaling or the reliability of the database.
  • Simple scalability and key-value storage.
  • Building a real-time database using DynamoDB streams.
  • Storing JSON data.
  • Implementation was harder than relational databases.
  • Querying is sometimes a nightmare.
  • Backup and restore are not straightforward.
If your database doesn't have any relations DynamoDB would be an ideal solution. Consider it more as key-value storage rather than a database, so it ideal for storing something based on a key and fetching it back using that key. But if you have relations or complex data-based queries DynamoDB might not have a straight forward solution.
Bob Smith | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
DynamoDB is being used in multiple ways to store vast amounts of semi-structured data which need to be quickly accessible by specific parties. It allows us to easily add new fields/values and access them in an easy manner as projects require. The biggest benefit we see is the ability to add additional fields and not require the structure change of continuity.
  • It's very easy to get started, creating a table with a partition/sort key and you're on your way.
  • You can scale up and down your read/write IO as needed.
  • You can store structured and unstructured data.
  • It works great with Web Development as it's JSON based.
  • There is a cost associated with creating indexes and being able to run queries.
  • It would be nice to have a thick client to be able to connect and work with DynamoDB.
  • It would be nice to be more aware of how DynamoDB functioned to be able to engineer towards optimization.
We've used DynamoDB to store online form submissions where forms can have differing information, identify changes between data sets, storage for vast amounts of large data-sets for analytics. Each of these scenarios has pros/cons versus using other traditional methods. It is more about accomplishing what you need to. DynamoDB allows for an increase in Read/Write IOs and allows scalability that some other traditional methods do not. Though it doesn't include some of the nice structure that traditional methods.
Score 6 out of 10
Vetted Review
Verified User
Incentivized
It was used as our primary data store for a link sharing and user profile-based application. We chose it for its speed and scalability as well as what we perceived beneficial pricing model. We knew that we wanted to use a NoSQL solution, and having one that was hosted by AWS seemed like an ideal fit.
  • It's fast. VERY fast. We still house our data that needs to be accessed quickly here.
  • It's a flexible NoSQL solution
  • It has unlimited scalability and you can use only what you pay for.
  • There is very minimal tooling for it compared to other mature solutions. You must go through the AWS dashboard to access what you need.
  • The throughput model for charging can make it very difficult to effectively read and write. It's good for small consistent loads, but does not handle spikes and can not transferring large amounts of data. Once you have data in Dynamo, it's very difficult to transport it out at a reasonable cost - very annoying if you want to move data to a different type of storage.
  • It gets expensive very quickly. We thought it would be cheap, but any kind of reasonable load will shoot your costs up beyond what you would have paid for other solutions.
  • The data is very rigid. You must follow their model of declaring indexes and they can't be updated once the tables are created.
It's a very good database for specific use-cases, but you should know full well what you are getting into with it. You are stuck doing things the Amazon way and paying much more than other options. If you need speed, have the money, and fully understand your indexes, it's top notch. If you care more about tooling, known costs, and stability, another solution might be better.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use DynamoDB for our project VacationTracker. We decided to use DynamoDB because it was cheap and the latency between our AWS Serverless microservices and DynamoDB is less.
  • Point-in-time recovery backup
  • Auto-scaling
  • Scaling horizontally
  • Only pay for what you use, its good for a startup project.
  • Price calculator, but for the startup project, it's free.
You should not worry about scaling with this tool. For beginners, it's not easy to understand how partition key and sort key work.
Marc Smith | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We are using DynamoDB with a simple, singular purpose - storing basic information for our customer base such as settings and configuration options. It's a quick and easy way for us to store and fetch this simple data, and since we have a very large presence within AWS already, it's a natural fit.
  • Simple interface for setup
  • Works well within an existing AWS ecosystem
  • Fast
  • Nothing, so long as you're using it with the intended purpose of a quick, reliable NOSQL DB
Fast, reliable access to a large amount of data has been key for us. However, if you're looking for a traditional relational database, this is certainly not the place to look. I'd also recommend this solution regardless of whether or not you're existing infrastructure is already in AWS or not - I'd say it's a good fit for any setup.
Chris Moyer | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We've been using Amazon DynamoDB since it was released in 2012. Previously, we used Amazon SimpleDB, which was much slower and slightly more difficult to work with than DynamoDB. DynamoDB is our "Source of Truth" for all data stored within my company, and is used to store all of our administrative information (such as connection details, FTP account information, and contact information), as well as the blog posts that we receive and process.
We have Lambda functions that write information to DynamoDB, which triggers other lambda functions to index that data in both SQL databases as well as Algolia for advanced searching and facet support.
DynamoDB helps us support the very random access patterns that we receive for content. Some days we process almost no stories, while other days we process hundreds of thousands of stories. With DynamoDB, we can automatically scale to whatever needs the day might have.
  • Automatic Scaling (especially with the new on-demand capacity mode).
  • Simple querying of massively large databases.
  • Effortlessly store a relatively unlimited amount of information.
  • Very cost effective for random access patterns.
  • Complex searching (no support for case-insensitive or full-text search).
  • Only supports up to two-key indexes.
  • Requires choosing the indexes up-front when doing searches.
  • Does not have an SQL compatible query front-end.
  • No join-table support (requires putting all data into one table).
Amazon DynamoDB is absolutely the easiest and most efficient way to run a Non-Relational database. It's perfectly suited for a "source of truth" where other indexes might be built from data stored in DynamoDB, and for use where search patterns are predictable. It's also incredibly effective at storing relatively unstructured data, or data models that might frequently change. As it does not require a rigid definition of data beforehand, it makes adjusting data stored in the table a non-effort, but it does require some planning when looking at how to get data back out of the table.
Unlike traditional SQL or Relational databases, DynamoDB is designed to have all relevant information within a single object. If not properly planned, this can lead to issues when building out a front-end. DynamoDB does not have join table support, nor does it support complex searches or "count" style responses. It is eventually consistent, although they recently did introduce Transaction support, there is no "rollback" option.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
The engineering and data teams use DynamoDB to persist data for some of our services. We use it as an inexpensive, fully-managed key-value store. The business problem it primarily addresses is developer velocity. With DynamoDB, developers do not need to configure and manage a database; even RDS requires some more configuration and on-going maintenance than DynamoDB. DynamoDB is inexpensive; it allows developers to adhere to practices like one-database-per-service when building even small, temporary services.
  • DynamoDB is fully-managed. In the early days, it lacked features like backups, and developers had to either implement some of their own backup functionality or live dangerously. Today, DynamoDB's claim to be fully-managed is more credible. Backups can be configured through the console. Table capacity does not even need to be planned anymore; you can scale (and pay) on-demand.
  • DynamoDB is inexpensive for some use-cases. In particular, DynamoDB is very inexpensive when you create a datastore for a low-volume micro-service, or a stateful background job. DynamoDB is much less expensive than RDS or Elasticache for these use-cases, and it allows developers to design systems without worrying about cost.
  • DynamoDB is fast when used for the use-cases it was designed for.
  • DynamoDB supports the development experience and testing reasonably well. AWS provides an official DynamoDB image that can be used in tests locally or in CI.
  • Capacity planning can be difficult, but it is probably a worthwhile exercise in itself. However, today you can scale tables on-demand without capacity planning.
  • Migrations can be slow and difficult. If you need to change your schema (e.g., add a secondary index) after you have written a large volume of data to the table or after consumers of the data are live, migrating can be expensive. Tooling for DynamoDB migrations is less mature than tools for migrating other datastores.
  • The API is complicated, and third-party wrappers, like PynamoDB, are immature.
  • Scanning tables is slow and expensive. It is important to anticipate all of the types of queries you will need to support and design your schema accordingly.
DynamoDB is great for two cases. The first is for services that do not experience high loads or demand high availability. DynamoDB is inexpensive, and it provides great developer velocity. The second is for applications that demand high performance, have well-understood requirements, and a narrow range of queries.
AYUSH VERMA | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
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.
Justin Schroeder | TrustRadius Reviewer
Score 4 out of 10
Vetted Review
Verified User
Incentivized
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.
Return to navigation