When comparing Cloudant vs MySQL, the Slant community recommends MySQL for most people. In the question“What are the best databases for building social network like apps?” MySQL is ranked 2nd while Cloudant is ranked 6th. The most important reason people chose MySQL is:
MySQL is made to handle a lot of data and to be used in large applications. This makes it extremely scalable and fast, even under a lot of workload.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Can replicate the database across several hosts
You can choose to host your database on a single cloud provider or you can replicate it over several different providers.
Pro Runs on both bare-metal and virtual machine
Users can choose whether their database instance will run on bare-metal or a virtual machine
Pro Crash friendly
The database behind Cloudant, CouchDB uses an append-only file for it's data. To restore already used up space, a compaction must happen. When this happens is up to the database maintainer.
Pro Cloud agnostic
Cloudant hosts databases with a lot of different cloud hosting providers including Amazon, Rackspace, SoftLayer and Microsoft Azure. This way customers can choose where their database is hosted.
Pro Scalable
MySQL is made to handle a lot of data and to be used in large applications. This makes it extremely scalable and fast, even under a lot of workload.
Pro Multiple third-party tools that help working with MySQL
Since MySQL is one of the most popular relational databases, maybe the most popular, there exist many third-party tools and applications that help developers to use MySQL in their development.
Pro Easy to start working with
Because of it's popularity there are a lot of tutorials and guides out there that help developers install and work with MySQL. The installation process itself is not very hard and there are multiple powerful GUI tools that make it extremely easy to work with MySQL for a beginner.
Cons
Con Can only achieve consistency through replication and verification
Since CouchDB is considered an AP (Available, Partition-Tolerant database management system), it is not really consistent (not all clients can have the same view of the data consistently) and the only way to achieve some "eventual consistency" is through replication and verification of data.
Con Error messages usually are not very detailed
When you are trying to do something in MySQL and something goes wrong it will simply give you an error message with an error code. Which does not say much about what went wrong unless you look it up online. This can be a little cumbersome during development.