Amazon DynamoDB is a cloud-native, NoSQL, serverless database service.
$0
capacity unit per hour
Cassandra
Score 9.0 out of 10
N/A
Cassandra is a no-SQL database from Apache.
N/A
MySQL
Score 8.3 out of 10
N/A
MySQL is a popular open-source relational and embedded database, now owned by Oracle.
N/A
Pricing
Amazon DynamoDB
Apache Cassandra
MySQL
Editions & Modules
Provisioned - Read Operation
$0.00013
capacity unit per hour
Provisioned - Write Operation
$0.00065
capacity unit per hour
Provisioned - Global Tables
$0.000975
per Read Capacity
On-Demand Streams
$0.02
per 100,000 read operations
Provisioned - Streams
$0.02
per 100,000 read operations
On-Demand Data Requests Outside AWS Regions
$0.09
per GB
Provisioned - Data Requests Outside AWS Regions
$0.09
per GB
On-Demand Snapshot
$0.10
per GB per month
Provisioned - Snapshot
$0.10
per GB per month
On-Demand Restoring a Backup
$0.15
per GB
Provisioned - Restoring a Backup
$0.15
per GB
On-Demand Point-in-Time Recovery
$0.20
per GB per month
Provisioned - Point-in-Time Recovery
$0.20
per GB per month
On-Demand Read Operation
$0.25
per million requests
On-Demand Data Stored
$0.25
per GB per month
Provisioned - Data Stored
$0.25
per GB per month
On-Demand - Write Operation
$1.25
per million requests
On-Demand Global Tables
$1.875
per million write operations replicated
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Amazon DynamoDB
Cassandra
MySQL
Free Trial
No
No
No
Free/Freemium Version
No
No
No
Premium Consulting/Integration Services
No
No
No
Entry-level Setup Fee
No setup fee
No setup fee
No setup fee
Additional Details
—
—
—
More Pricing Information
Community Pulse
Amazon DynamoDB
Apache Cassandra
MySQL
Considered Multiple Products
Amazon DynamoDB
Verified User
Engineer
Chose Amazon DynamoDB
I've used SQL and NoSQL solutions, such as MongoDB and MySQL. I would not choose Dynamo to be a primary datastore and one of the others is likely a better option. Dynamo is good as almost viewed as a large cache. If you want something that is more supported and easier to work …
MongoDB vs. Amazon DynamoDB:• MongoDB requires more human management than DynamoDB, which is a fully managed service.• DynamoDB's scalability is automatic, whereas MongoDB's horizontal scaling may require more work.• When compared to DynamoDB, MongoDB offers more extensive data …
DynamoDB's scalability is more automated and effortless, making it easier to handle rapid growth. Other tools require more manual configuration while DynamoDB simplifies database administration. Also, DynamoDB provides strong consistency while other tools like MongoDB and Apache…
AWS handles hardware provisioning, data recovery, fault tolerance, patching, and database upgrades for DynamoDB since it is a fully managed database service. Businesses can then concentrate on other aspects of their operations, including product development or customer service, …
Other all SQL Databases are based on the traditional Schema Structure and Amazon DynamoDB is NoSQL so you don't need to generate the SQL Schemas. You can store the data whatever you want, whenever you want. You can store data in structured or non-structured any way you want. If …
DynamoDB offers strong consistency, more fine-grained control over read and write capacities, and integrates seamlessly with other AWS services. DynamoDB is designed for horizontal scalability and high throughput, making it a better choice for applications with rapidly changing …
The automation is much more subtle and it performs way better for internet-scale applications. No matter the number of connections, the performance doesn't dip even a bit.
Amazon DynamoDB is a blind pick if you are already using AWS services suite and your data is also present on the Amazon cloud. If you are not sure of the type of data that you are going to get or you know that is won't always be structured data, then it is also the right choice.
The main reason for sticking to DynamoDB is that its part of the AWS suite and since its a managed solution, so we do not have to worry about scalability and reliability. There are some advantages and disadvantages for using DynamoDB and the decision ultimately depends on your …
When you compare database systems it's easy to have an apples to apples comparison. However, when comparing two No-SQL systems it isn't as easy because they are built with different purposes in mind. DynamoDB has been easier to implement because it comes as a Service from …
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.
We ended up selecting DynamoDB compared to similar products simply because we host on AWS. To use any other NoSQL solution would require more work in the long run due to having to maintain the EC2 instance, manage updates to the operating system and whatever NoSQL system that …
While evaluating Cassandra, PostgreSQL, MongoDB and DynamoDB we found Cassandra and DynamoDB being well suited for us. At the same time we didn't have the luxury of large team or devops so it came down to Amazon DynamoDB. As a small team we are glad to go forward with this …
DynamoDB is fully managed which is a great plus over MongoDB. The feature set is not as strong on MongoDB's for document databases, but it the managed aspect is highly compelling. Similarly for Cassandra, DynamoDB is managed. DynamoDB scales much better than CouchDB.
Four years ago, I needed to choose a web-scale database. Having used relational databases for years (PostgreSQL is my favorite), I needed something that could perform well at scale with no downtime. I considered VoltDB for its in-memory speed, but it's limited in scale. I …
Cassandra is the only NoSQL database I have extensive experience with. In terms of other open source database solutions, I can say that I like Cassandra as much or equally as traditional Oracle MySQL, and a lot more than PostgresSQL. The decision to use Cassandra was driven by …
DynamoDB is good and is also a truly global database as a service on AWS. However, if your organization is not using AWS, then Cassandra will provide a highly scalable and tuneable, consistent database. Cassandra is also fault-tolerant and good for replication across multiple …
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for …
Technology selection should be done based on the need and not based on buzz words in the market (google searching). If your data need flat file approach and more searchable based on index and partition keys, then it's better to go for Cassandra. Cassandra is a better choice …
Apache Cassandra has the best of both worlds, it is a Java based NoSQL, linearly scalable, best in class
tunable performance across different workloads, fault tolerant, distributed, masterless, time series database. We have used both Apache HBase and MongoDB for some use cases …
We also evaluated mySQL and mongoDB. Both of them have their strengths and weaknesses but they are less suited for storing massive amounts of time series data. In addition, they are not elastic by nature and we required a "future-proof" solution as it was difficult to estimate …
I've been using MySQL for so long that it's my go-to RDBMS. I really like MySQL Workbench in conjunction with MySQL. I've experimented with Amazon DynamoDB in my personal time.
Of course compare to no SQL databases it's slower but there is a completely different use case for them... In my opinion it is better than PostgreSQL, it's easier to configure and has the same performance, or approximately the same. Of course Oracle Database is a way bigger …
Comparing MongoDB vs MySQL performance is difficult, since both management systems are extremely useful and the core differences underly their basic operations and initial approach. However, MongoDB vs MySQL is a hot argument that has been going on for a while now: mature …
If you are looking for a relational database (depending on your app), MySQL is a good place to start. MongoDB and Cassandra are NoSQL options (very powerful). I am more inclined towards PostgreSQL as it's more scalable over time. MySQL was bought by Oracle and the community …
MySQL stands in better place when it comes to cost. It is also an inexpensive database. We selected this database due to the cost as first reason. Secondly we do not have complex database manipulation requirements separately. Occasionally we need to generate reports which we do …
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
Apache Cassandra is a NoSQL database and well suited where you need highly available, linearly scalable, tunable consistency and high performance across varying workloads. It has worked well for our use cases, and I shared my experiences to use it effectively at the last Cassandra summit! http://bit.ly/1Ok56TK It is a NoSQL database, finally you can tune it to be strongly consistent and successfully use it as such. However those are not usual patterns, as you negotiate on latency. It works well if you require that. If your use case needs strongly consistent environments with semantics of a relational database or if the use case needs a data warehouse, or if you need NoSQL with ACID transactions, Apache Cassandra may not be the optimum choice.
MySQL is best suited for applications on platform like high-traffic content-driven websites, small-scale web apps, data warehouses which regards light analytical workloads. However its less suited for areas like enterprise data warehouse, OLAP cubes, large-scale reporting, applications requiring flexible or semi-structured data like event logging systems, product configurations, dynamic forms.
Continuous availability: as a fully distributed database (no master nodes), we can update nodes with rolling restarts and accommodate minor outages without impacting our customer services.
Linear scalability: for every unit of compute that you add, you get an equivalent unit of capacity. The same application can scale from a single developer's laptop to a web-scale service with billions of rows in a table.
Amazing performance: if you design your data model correctly, bearing in mind the queries you need to answer, you can get answers in milliseconds.
Time-series data: Cassandra excels at recording, processing, and retrieving time-series data. It's a simple matter to version everything and simply record what happens, rather than going back and editing things. Then, you can compute things from the recorded history.
Cassandra runs on the JVM and therefor may require a lot of GC tuning for read/write intensive applications.
Requires manual periodic maintenance - for example it is recommended to run a cleanup on a regular basis.
There are a lot of knobs and buttons to configure the system. For many cases the default configuration will be sufficient, but if its not - you will need significant ramp up on the inner workings of Cassandra in order to effectively tune it.
Learning curve: is big. Newbies will face problems in understanding the platform initially. However, with plenty of online resources, one can easily find solutions to problems and learn on the go.
Backup and restore: MySQL is not very seamless. Although the data is never ruptured or missed, the process involved is not very much user-friendly. Maybe, a new command-line interface for only the backup-restore functionality shall be set up again to make this very important step much easier to perform and maintain.
It's core to our business, we couldn't survive without it. We use it to drive everything from FTP logins to processing stories and delivering them to clients. It's reliable and easy to query from all of our pipeline services. Integration with things like AWS Lambda makes it easy to trigger events and run code whenever something changes in the database.
I would recommend Cassandra DB to those who know their use case very well, as well as know how they are going to store and retrieve data. If you need a guarantee in data storage and retrieval, and a DB that can be linearly grown by adding nodes across availability zones and regions, then this is the database you should choose.
For teaching Databases and SQL, I would definitely continue to use MySQL. It provides a good, solid foundation to learn about databases. Also to learn about the SQL language and how it works with the creation, insertion, deletion, updating, and manipulation of data, tables, and databases. This SQL language is a foundation and can be used to learn many other database related concepts.
Functionally, DynamoDB has the features needed to use it. The interface is not as easy to use, which impacts its usability. Being familiar with AWS in general is helpful in understanding the interface, however it would be better if the interface more closely aligned with traditional tools for managing datastores.
I give MySQL a 9/10 overall because I really like it but I feel like there are a lot of tech people who would hate it if I gave it a 10/10. I've never had any problems with it or reached any of its limitations but I know a few people who have so I can't give it a 10/10 based on those complaints.
It works very well across all the regions and response time is also very quick due to AWS's internal data transfer. Plus if your product requires HIPPA or some other regulations needs to be followed, you can easily replicate the DB into multiple regions and they manage all by it's own.
We have never contacted MySQL enterprise support team for any issues related to MySQL. This is because we have been using primarily the MySQL Server community edition and have been using the MySQL support forums for any questions and practical guidance that we needed before and during the technical implementations. Overall, the support community has been very helpful and allowed us to make the most out of the community edition.
The only thing that can be compared to DynamoDB from the selected services can be Aurora. It is just that we use Aurora for High-Performance requirements as it can be 6 times faster than normal RDS DB. Both of them have served as well in the required scenario and we are very happy with most of the AWS services.
We evaluated MongoDB also, but don't like the single point failure possibility. The HBase coupled us too tightly to the Hadoop world while we prefer more technical flexibility. Also HBase is designed for "cold"/old historical data lake use cases and is not typically used for web and mobile applications due to its performance concern. Cassandra, by contrast, offers the availability and performance necessary for developing highly available applications. Furthermore, the Hadoop technology stack is typically deployed in a single location, while in the big international enterprise context, we demand the feasibility for deployment across countries and continents, hence finally we are favor of Cassandra
MongoDB has a dynamic schema for how data is stored in 'documents' whereas MySQL is more structured with tables, columns, and rows. MongoDB was built for high availability whereas MySQL can be a challenge when it comes to replication of the data and making everything redundant in the event of a DR or outage.
I have taken one point away due to its size limits. In case the application requires queries, it becomes really complicated to read and write data. When it comes to extremely large data sets such as the case in my company, a third-party logistics company, where huge amount of data is generated on a daily basis, even though the scalability is good, it becomes difficult to manage all the data due to limits.
Some developers see DynamoDB and try to fit problems to it, instead of picking the best solution for a given problem. This is true of any newer tool that people are trying to adopt.
It has allowed us to add more scalability to some of our systems.
As with any new technology there was a ramp up/rework phase as we learned best practices.
I have no experience with this but from the blogs and news what I believe is that in businesses where there is high demand for scalability, Cassandra is a good choice to go for.
Since it works on CQL, it is quite familiar with SQL in understanding therefore it does not prevent a new employee to start in learning and having the Cassandra experience at an industrial level.