Easily build complex reports
Monitoring and efficiency metrics
Custom cost allocation tags
Network cost visibility
Organizational cost hierarchies
Budgeting and budget alerts
Discover active resources
Consumption-based insights
Alerts for unexpected charges
Automated AWS cost savings
Discover cost savings
Unified view of AWS discounts
COGS and business metrics
Model savings plans
Collaborate on cost initiatives
Create and manage your teams
Automate cloud infrastructure
Cloud cost issue tracking
Detect cost spikes
by Emily Dunenfeld
Contents
MongoDB is one of the most popular NoSQL databases for a reason: its ease of use, ability to manage huge amounts of unstructured data, and strong developer ecosystem make it a go-to choice for cloud-native applications. Its open-source offering has been around since 2009 but it wasn’t until 2016 that its managed service, MongoDB Atlas, launched on AWS. Amazon DocumentDB was released to compete in early 2019 as a managed NoSQL database designed for applications using MongoDB’s API.
While Amazon claims MongoDB compatibility, DocumentDB is not a true drop-in replacement—certain features and commands are missing or behave differently, which means some applications may require modifications to work properly. Still, some users consider DocumentDB for its tight integration with AWS services or in cases where MongoDB Atlas removes features that DocumentDB still supports.
When evaluating the two, one of the biggest deciding factors is cost. In a production scenario, we found DocumentDB to be 26.7% more expensive than MongoDB Atlas.
MongoDB has both cloud and self-managed deployment options. MongoDB Atlas is MongoDB’s fully managed cloud database service, making it the most comparable to Amazon DocumentDB. It consists of a free tier for learning use cases, a flex tier for development and testing use cases, and a dedicated tier for production use cases.
The dedicated tier supports deployments for the three major cloud providers—AWS, GCP, and Azure. For AWS, there are 12 cluster tiers, ranging from 10 GB of storage, 2 GB of RAM, and 2 vCPUs to 4000 GB of storage, 768 GB of RAM, and 96 vCPUs. There are additional cluster options for Low-CPU and Local NVMe SSD as well. Charges apply only for the time the instance is running and vary based on region.
MongoDB Atlas dedicated cluster pricing for AWS N Virginia (us-east-1) (scroll to see full table)
To ensure high availability MongoDB Atlas automatically deploys clusters across two or three AWS Availability Zones (AZs) (depending on how many AWS AZs there are for the selected region).
Additional costs include data transfer, additional storage, and backups.
Like MongoDB Atlas, Amazon DocumentDB charges based on instance type while instances are active. It offers 29 instance options, including burstable types for lower-cost workloads and high-performance options for demanding applications. The price depends on region and the chosen pricing model—Standard or I/O-Optimized. I/O-Optimized costs more for compute and storage, but does not charge for I/O requests. It is more cost-effective for cases where I/O costs exceed 25% of database cluster spend.
Amazon DocumentDB instance pricing for N Virginia (us-east-1) (scroll to see full table)
Amazon recommends multi-AZ deployments for high availability, however, unlike MongoDB Atlas, you are charged for it. Costs are per primary instance plus each secondary instance.
Charges are separate for compute, storage, and if applicable, I/O, making it easy to tailor to your specific use case.
Amazon DocumentDB stotage and I/O pricing for N Virginia (us-east-1)
Charges also apply for data transfer, backup storage, and optional features such as Elastic clusters.
Some initial observations before we dive into the pricing scenario:
A local mid-sized e-commerce company running a high-traffic online store is evaluating MongoDB Atlas and Amazon DocumentDB for their database needs. Their workload includes frequent product catalog updates, customer order processing, and real-time inventory tracking. Given their traffic patterns and need for high availability, they plan to deploy a 16 vCPU instance with 300 GB of storage in a multi-AZ setup.
For MongoDB Atlas, they look at the M60 cluster which has 16 vCPU, 64 GB of RAM, and 320 GB of storage included. The hourly cost is $3.95. For a month with 720 hours (24 hours x 30 days) the total monthly cost is $2,844 ($3.95 x 720 hours).
For DocumentDB, due to high-IO rates, they opt for the I/O-Optimized plan. They evaluate the newest generation Graviton instance with 16 vCPUs and 128 GB of RAM, db.r5.4xlarge. The hourly cost is $2.44, making the monthly cost for one instance $1,756.8 ($2.44 x 720 hours). However, since it is a production database that needs to be highly available, they will need another instance in a different AZ, bringing the cost to $3,513.6 ($1756.8 x 2 instances).
Finally, the 300 GB of storage for Document DB is charged at $.30 per GB-month, corresponding to $90 ($.30 x 300 GB) in monthly storage costs and bringing the total to $3,603.6.
Amazon DocumentDB is 26.7% more expensive than MongoDB Atlas in this scenario.
MongoDB Atlas has a catalog of useful features, multi-cloud deployment options, and predictable pricing. DocumentDB provides ease of use and seamless integration with AWS services. When comparing the pricing between the two for production workloads where high-availability is a requirement, we found MongoDB Atlas to be the cost-effective choice.
Grafana is a strong competitor to the monitoring and observability features of Datadog for a fraction of the price.
AWS is implementing a policy update that will no longer allow Reserved Instances and Savings Plans to be shared across end customers.
Use FinOps as Code to explore all your active cost-generating provider resources.