AWS Launches New Document-Oriented Database Compatible With MongoDB
AWS just released their 10th database service (15th, if you count each engine offered in the relational database services). This one, called Amazon DocumentDB, stores semi-structured data inside a scalable, highly-available managed service. While offering a MongoDB-compatible API, DocumentDB is not running MongoDB software, which caused hand-wringing among some tech watchers.
Amazon positioned DocumentDB as a drop-in replacement that’s “designed to be compatible with your existing MongoDB applications and tools.” AWS claims that DocumentDB offers the scalability, availability, and performance needed for production-grade MongoDB workloads. For scale, DocumentDB offers up to 64TB of storage that grows automatically (versus pre-allocating) along with your usage. Customers also have a choice of “instance” sizes that scale up to 488 GiB of memory. For availability, DocumentDB replicates data 6x across three availability zones. It also lets users create up to fifteen read replicas. And for performance, DocumentDB runs on SSD storage and is architected for low-latency read operations. According to Jeff Barr at AWS, DocumentDB includes a number of built-in database management capabilities.
Like the other AWS database services, Amazon DocumentDB is fully managed, with built-in monitoring, fault detection, and failover. You can set up daily snapshot backups, take manual snapshots, and use either one to create a fresh cluster if necessary. You can also do point-in-time restores (with second-level resolution) to any point within the 1-35 day backup retention period.
Some speculate that DocumentDB is built upon AWS Aurora PostgreSQL, but it’s clear that it’s NOT running MongoDB software. MongoDB, Inc is one of a handful of companies that have recently changed their license to discourage cloud providers from offering parts of their open-source software as a service. Tech industry veteran Brian Cantrill predicted that cloud providers wouldn’t be deterred.
… cloud services providers are emphatically not going to license your proprietary software.
The cloud services providers are currently reproprietarizing all of computing — they are making their own CPUs for crying out loud! — reimplementing the bits of your software that they need in the name of the service that their customers want (and will pay for!) won’t even move the needle in terms of their effort.
Microsoft employed this API-facade strategy with their Azure Cosmos DB NoSQL database service back in 2017. Cosmos DB — interestingly enough, also called DocumentDB before being renamed — serves up both MongoDB and Cassandra APIs. That announcement, nor Microsoft’s recent announcement of an Apache Kafka interface on Azure Event Hubs, failed to stir up the industry angst that this AWS one has. The president of MongoDB, which saw their stock drop following the AWS announcement, didn’t mince words when talking to TechCrunch.
“Imitation is the sincerest form of flattery, so it’s not surprising that Amazon would try to capitalize on the popularity and momentum of MongoDB’s document model,” MongoDB CEO and president Dev Ittycheria told us. “However, developers are technically savvy enough to distinguish between the real thing and a poor imitation. MongoDB will continue to outperform any impersonations in the market.”
In the same TechCrunch interview, a company spokesperson highlighted that the MongoDB 3.6 API used by DocumentDB (Microsoft uses the 3.2 version of the MongoDB API) is missing some key follow-on innovations.
A company spokesperson for MongoDB also highlighted that the 3.6 API that DocumentDB is compatible with is now two years old and misses most of the newest features, including ACID transactions, global clusters and mobile sync.
Some consider AWS’s relationship with open-source software (OSS) complicated, as they package and offer OSS software without major contributions back to many projects. However, they also make a number of large OSS contributions themselves.One might also remember that AWS EC2 APIs themselves were cloned as part of the OpenStack initiatve. And most every object storage provider offers an Amazon S3-compatible interface.
Amazon DocumentDB is now available in the United States and Europe. Pricing for this service is based on a combination of instance class, consumed storage, I/O operations, and data transfer. The minimum monthly charge based on instance size alone would be $199.44. The Service Level Agreement for DocumentDB commits to 99.9% availability of cluster access, compared to Amazon DynamoDB that has an uptime commitment of 99.999%. For reference, Microsoft’s Cosmos DB has a 99.99% SLA that goes beyond just accessibility, but also covers throughput. latency, and consistency guarantees.