It may seem that there are multiple options for deploying MongoDB in the cloud. Amazon DocumentDB, for example, claims to be an AWS-native database with full support for the MongoDB API. While they support some MongoDB features, it is important to note that DocumentDB is not fully compatible. The only place to access fully-featured MongoDB as a service on AWS is through MongoDB Atlas.
In this comparison we aim to explain the differences between Amazon DocumentDB and MongoDB Atlas, focusing around the following key areas:
Amazon DocumentDB is a NoSQL JSON document database service with a limited degree of compatibility with MongoDB.
DocumentDB is not based on the MongoDB server. Rather it emulates the MongoDB API, and runs on top of Amazon’s Aurora backend platform. This creates significant architectural constraints, functionality limitations and broken compatibility.
DocumentDB claims to support the MongoDB 4.0 API, which implies that it is at parity with MongoDB v4.0, released back in June 2018. However this is partially true, as the majority of MongoDB 4.0 differentiating features are not supported by DocumentDB. In addition, compatibility testing reveals it fails over 66% of the MongoDB API correctness tests. Applications written for MongoDB will need to be re-written to work with Amazon DocumentDB.
Interested in up-to-date results on DocumentDB's compatibility with the MongoDB API? Get the latest results at Is DocumentDB Really MongoDB?
The key differences between DocumentDB and MongoDB’s on-demand, elastic, and fully managed Atlas service are summarized below.
MongoDB offers the fully managed, on-demand and global MongoDB Atlas service, in the public cloud. Atlas enables customers to deploy, operate, and scale MongoDB databases on AWS, Azure, or Google Cloud. MongoDB Atlas is available through a pay-as-you-go model and billed on an hourly basis. It’s easy to get started – use a simple GUI or programmatic API calls to select the public cloud provider, region, instance size, and features you need. MongoDB Atlas provides:
Automated database and infrastructure provisioning along with auto-scaling so teams can get the database resources they need, when they need them, and can elastically scale in response to application demands.
Security features to protect your data, with network isolation, fine-grained access control, auditing, and end-to-end encryption down to the level of individual fields, enabling you to comply with regulations such as ISO, HIPAA and GDPR. Built in replication both within and across regions for always-on availability.
Global Clusters for a fully managed, globally distributed database that provides low latency, responsive reads and writes to users anywhere, with strong data placement controls for regulatory compliance.
Combined transactional and analytical capabilities with Atlas Analytics Nodes to isolate analytics queries from operational workloads while providing real-time insight. Native MongoDB analytics tools, such as MongoDB Charts and MongoDB Connectors (for SQL, Tableau, Power BI and Spark) are configured to utilize Analytics Nodes by default. MongoDB's rich aggregation pipeline engine allows users to run expressive queries against their data.
Fully integrated native MongoDB data visualization tools – MongoDB Charts, which supports the full richness of the document model, including nested, hierarchical and geospatial data and provide embedding and sharing capabilities. Quickly build visualizations of your data without needing to deploy or manage any software or infrastructure.
Fully integrated MongoDB Atlas Data Federation which allows users to quickly run federated queries across Atlas clusters and data stored on Amazon S3 in many formats. The MongoDB Query Language (MQL) and tools allow users to get value from data faster.
Fully managed backups with point in time recovery to protect against data corruption, and the ability to query backups in-place without full restores.
Automatic data tiering which helps lower costs by moving data to lower cost storage such as Amazon S3.
Fine-grained monitoring and customizable alerts for comprehensive performance visibility. Automated patching and single-click upgrades for new major versions of the database, enabling you to take advantage of the latest MongoDB features.
Access to the Atlas App Services, with Data Access Controls, Functions, and Triggers delivered in a completely serverless model.
Native time-series support optimized for both highly performant data ingestion and querying, along with reduced I/O and storage overhead
The full text Atlas Search service providing rich search capabilities against your fully managed databases with no additional infrastructure or systems to provision, manage, or scale.
Live migration to move your self-managed MongoDB clusters into the Atlas service or to move Atlas clusters between cloud providers.
Stable API to make upgrades risk-free, future-proofing your development
Widespread coverage on the major cloud platforms with availability in 115+ cloud regions across Amazon Web Services, Microsoft Azure, and Google Cloud. MongoDB Atlas delivers a consistent experience across each of the cloud platforms, ensuring developers can deploy wherever they need to, without compromising critical functionality or risking lock-in.
MongoDB Atlas is serving a vast range of workloads for startups, Fortune 500 companies, and government agencies, including mission-critical applications handling highly sensitive data in regulated industries. The developer experience across MongoDB Atlas and self-managed MongoDB is consistent, ensuring that you easily move from on-premises to the public cloud, and between providers as your needs evolve.
Beyond the database, MongoDB Atlas Data Federation allows you to simultaneously query data in any format on Amazon S3 and in Atlas clusters using the MongoDB Query Language (MQL). With Atlas Data Federation you can realize the value of your S3 data lake faster: you don't have to move data anywhere, you can work with complex data immediately in its native form, and with its fully-managed, serverless architecture, you control costs and remove the operational burden. DocumentDB offers no equivalent capability, and so users must spin up an entirely separate service with a different query language to access S3 data.
Built and run by the same team that develops the data platform, MongoDB Atlas is the best way to run MongoDB apps.
Amazon DocumentDB claims to support the MongoDB 4.0 API, which implies that it is at parity with MongoDB v4.0, released back in June 2018. In actual fact, the DocumentDB 4.0 feature set still closely resembles early MongoDB 3.0 and 3.2, released in 2015, and compatibility testing reveals it fails 66% of the MongoDB API correctness tests. Applications written for MongoDB will need to be rewritten to work with Amazon DocumentDB. However, since DocumentDB emulates a MongoDB API, applications written for DocumentDB can be easily migrated into MongoDB Atlas.
Interested in migrating from DocumentDB to MongoDB Atlas? Please refer to our migration guide.
Interested in up-to-date results on DocumentDB's compatibility with the MongoDB API? Get the latest results at Is DocumentDB Really MongoDB?.
Try MongoDB Atlas for free for a real MongoDB experience.
Document databases store data in JSON-like documents which allows them to be inherently easy for developers to work with. MongoDB is a modern document database which contains many of the powerful features found in popular relational databases. These include ACID-compliant transactions, schema governance, enterprise-grade security, and more.
MongoDB offers the Atlas Data Federation engine, which allows users to quickly and easily query data in any format on Amazon S3 using the MongoDB Query API.
DocumentDB does not contain any MongoDB code, supports a limited subset of MongoDB features, and is more costly and difficult to manage.
MongoDB offers Atlas for the Edge, a solution that streamlines data management between mobile and edge devices with an offline-first approach. This means that synchronization and conflict resolution are automatically handled in any case, regardless of network connectivity. Atlas for the Edge also allows users to process data on-premise in Edge Servers, reducing the distance between edge devices and compute, and therefore decreasing latency.
As part of its developer data platform, MongoDB Atlas Application Services offers a suite of tools for building web applications.