Amazon DynamoDB is a cloud-native, NoSQL, serverless database service.
$0
capacity unit per hour
CouchDB
Score 6.0 out of 10
N/A
Apache CouchDB is an HTTP + JSON document database with Map Reduce views and bi-directional replication. The Couch Replication Protocol is implemented in a variety of projects and products that span computing environments from globally distributed server-clusters, over mobile phones to web browsers.
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 CouchDB
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
CouchDB
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 CouchDB
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 …
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 …
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.
Main advantage of DynamoDB is Amazon's offering as SaaS. This removes the need for managing the database. DynamoDB is well suited for querying simple and flat JSON objects.
Compared to PostgresSQL, I would pick Postgres over Dynamo considering that Postgres is very mature and …
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.
Open Source, and freely able to install it on any OS you desire (the big 3, anyways) CouchDB was selected for that, it's early-adoption of JSON and its mobile-friendly environment. Also, I have used it off and on in various non-professional projects, and it was really one of …
Compared to MongoDB, CouchDB's Map-Reduce paradigm poses a steeper learning curve for SQL users. However, CouchDB's master-master replication is an advantage of implementing a load-balanced solution. Even though, currently, CouchDB has strong community support, as an open …
MongoDB and CouchDB are both document stores, but their concurrency models and ability to scale are very different. MongoDB cannot replicate / shard over unreliable links and network partitions have been the cause of data loss in the past. MongoDB has an easier query language …
We looked at MongoDB and Firebase. MongoDB gives us the best working db engine with a very intuitive design. However, it does not work as well offline. Firebase was extremely hard to create searching and indexing. Using a third-party to search didn't work for us or at least it …
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.
MySQL has it's pros / cons. The best things about MySQL are that it is open-source/free and has such a vast community of users. If you want a free database MySQL is the quickest to use, but if you're trying to build a strong foundation for your company, I prefer Postgres. If …
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
Great for REST API development, if you want a small, fast server that will send and receive JSON structures, CouchDB is hard to beat. Not great for enterprise-level relational database querying (no kidding). While by definition, document-oriented databases are not relational, porting or migrating from relational, and using CouchDB as a backend is probably not a wise move as it's reliable, but It may not always be highly available.
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.
It can replicate and sync with web browsers via PouchDB. This lets you keep a synced copy of your database on the client-side, which offers much faster data access than continuous HTTP requests would allow, and enables offline usage.
Simple Map/Reduce support. The M/R system lets you process terabytes of documents in parallel, save the results, and only need to reprocess documents that have changed on subsequent updates. While not as powerful as Hadoop, it is an easy to use query system that's hard to screw up.
Sharding and Clustering support. As of CouchDB 2.0, it supports clustering and sharding of documents between instances without needing a load balancer to determine where requests should go.
Master to Master replication lets you clone, continuously backup, and listen for changes through the replication protocol, even over unreliable WAN links.
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.
Because our current solution S3 is working great and CouchDB was a nightmare. The worst is that at first, it seemed fine until we filled it with tons of data and then started to create views and actually delete.
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.
Couchdb is very simple to use and the features are also reduced but well implemented. In order to use it the way its designed, the ui is adequate and easy. Of course, there are some other task that can't be performed through the admin ui but the minimalistic design allows you to use external libraries to develop custom scripts
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.
it support is minimal also hw requirements. Also for development, we can have databases replicated everywhere and the replication is automagical. once you set up the security and the rules for replication, you are ready to go. The absence of a model let you build your app the way you want it
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.
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.