When comparing Amazon DynamoDB vs Cloudant, the Slant community recommends Cloudant for most people. In the question“What are the best NoSQL database as a service providers?” Cloudant is ranked 2nd while Amazon DynamoDB is ranked 7th. The most important reason people chose Cloudant is:
You can choose to host your database on a single cloud provider or you can replicate it over several different providers.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Easy integration with other Amazon services
Since it's part of AWS, like with other services that Amazon provides, it's very easy to integrate DynamoDB with any other AWS service that you may be using.
Pro High uptime
Data hosted on DynamoDB is automatically replicated across multiple AWS availability zones, this way the data is protected from any malfunction that may cause loss and it also ensures high uptime.
Pro Trigger tasks (AWS Lambda) on write
When a new record is written, it can trigger one or many AWS Lambda functions. With Lambda functions in Java, JavaScript, and Python and the other con of "Easy integration with other Amazon services", Lambda functions may be all you need to process the events. This is particularly useful for creating projections (often as other DynamoDB tables) and other read models in a CQRS pattern.
Pro Free tier
DynamoDB offers a free tier which allows up to 40 million database operations a month for free.
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.
Cons
Con Poor documentation
In true AWS fashion, the documentation for DynamoDB is not top notch. While the learning curve is generally very soft and it's not hard to learn, you need to have at least some experience with cloud and database management to be able to start using DynamoDB and understand the documentation.
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.