Amazon DocumentDB is fully managed document database service that supports MongoDB workloads at scale. As a document database, Amazon DocumentDB makes it easy to store, query, and index JSON data.
Key Points
- Amazon DocumentDB is a fully managed service that is compatible with MongoDB.
- Amazon DocumentDB supports various applications, drivers and tools that work with MongoDB.
- Amazon DocumentDB enables the compatibility by virtue of implementing MongoDB API on top of Amazon DocumentDB implementation.
- Amazon DocumentDB is highly available – replicates 6 copies of data across three AZs.
- Like many other Amazon databases, Amazon DocumentDB decouples underlying compute and storage, allowing each to scale independently.
- Amazon DocumentDB supports read capacity up to millions of requests per second by leveraging up to 15 Read Replicas.
- You can use AWS Data Migration Service (DMS) to migrate MongoDB databases to Amazon DocumentDB.
- AWS provides DMS free for six months to transfer your MongoDB data to DocumentDB.
- Encryption – data is encrypted at rest, and in transit.
Components of Amazon DocumentDB
Following diagram shows simplified architecture of DocumentDB:
Image courtesy of AWS
Read Replicas
DocumentDB supports Read Replicas, with following characteristics:
- Replicas share the same underlying storage volumes as the primary instance
- You can have up to 15 Read Replicas
- Replication is done asynchronously (typically with milliseconds lag)
- DocumentDB can automatically failover to one of the Replicas
- You can assign priorities to Replica instances
- Replicas stay within the Region – that is – no cross-Region replicas allowed
Backup and Restore
Automatic Backups
- DocumentDB supports automatic backups, and Point-in-time Restore.
- You can enable backup window for point-in-time restore up to 35 days.
Manual Backups
- You can take manual snapshots of DocumentDB clusters.
- These snapshots are retained until you manually delete them.
- Restoring from manual snapshots require creation of new Clusters
Pricing
DocumentDB billing is done on following components:
- On-demand instances – per second (with 10-minute minimum)
- Database I/O – per million I/Os for read or writes
- Database Storage – per GB per month
- Backup Storage – per GB per month
Following diagram provides a simplified conceptual view of DocumentDB architecture and above components are billed:
Image courtesy of AWS
External Resources