Amazon DocumentDB

awsNoSQL databaseaws-documentdb

MongoDB-compatible document cluster whose storage keeps six copies of the data across three Availability Zones.

Provider
aws
Category
Data
Properties · 8 set by this component
propertytypevaluesrequiredkind defaultthis component
backupEnabledboolean—nofalse▸ true
backupRetentionDaysinteger—no—▸ 1
bucketing · advancedboolean—nofalseinherited
clusterType · component propertyenuminstance-based | elasticnoinstance-basedinherited
conflictResolutionenumnone | last-writer-wins | vector-clock | app-mergeno—inherited
consistencyenumeventual | tunable | strongnoeventual▸ tunable
encryptionAtRestboolean—nofalse▸ true
globalCluster · component propertyboolean—nofalseinherited
instancesinteger—no—inherited
managedboolean—nofalse▸ true
modelenumkey-value | wide-column | documentyes—▸ document
partitionKeystring—no—inherited
quorumReads · advancedinteger—no—inherited
quorumWrites · advancedinteger—no—inherited
replicationenumsingle-region | multi-region-single-leader | multi-region-multi-leader | leaderlessnosingle-region▸ single-region
replicationFactorinteger—no—▸ 6
storageConfiguration · component propertyenumstandard | io-optimizednostandardinherited
tls · component propertyboolean—notrueinherited
tombstoneTtlDays · advancedinteger—no—inherited
Rules that apply · 2

Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.

multi-leader-store-without-conflict-policy

Multi-leader replication accepts concurrent writes in several regions. With no conflict resolution policy declared, divergent replicas are reconciled by accident rather than by design.

  • — all of these hold:
  • — the node's `replication` is "multi-region-multi-leader"
  • — any of these hold:
  • — the node's `conflictResolution` has no value
  • — the node's `conflictResolution` is "none"
read-heavy-path-without-cache

The design states a read-heavy workload and application servers read this datastore directly, yet the design has no cache anywhere. Every read pays a database round trip.

  • — all of these hold:
  • — the design requirement `traffic.readWriteRatio` is a number greater than 10
  • — the node has at least one synchronous incoming edge from an app-server
  • — this does not hold:
  • — the design contains a node of kind cache
Use it in a design
nodes:
  - { id: "documentdb", component: "aws-documentdb" }
Other NoSQL database products · 46
ApsaraDB for HBasealibaba-apsaradb-hbasealibabacloudnosql-databaseApsaraDB for MongoDBalibaba-apsaradb-mongodbalibabacloudnosql-databaseLindormalibaba-lindormalibabacloudnosql-databaseTablestorealibaba-tablestorealibabacloudnosql-databaseAmazon CloudFront KeyValueStoreaws-cloudfront-keyvaluestoreawsnosql-databaseAmazon Cognito Syncaws-cognito-syncawsnosql-databaseAWS HealthLakeaws-healthlakeawsnosql-databaseAmazon Keyspaces (for Apache Cassandra)aws-keyspacesawsnosql-databaseAmazon DynamoDBdynamodbawsnosql-databaseAzure Cosmos DBazure-cosmos-dbazurenosql-databaseAzure DocumentDBazure-documentdbazurenosql-databaseAzure Health Data Servicesazure-health-data-servicesazurenosql-databaseAzure Managed Instance for Apache Cassandraazure-managed-cassandraazurenosql-databaseAzure Table Storageazure-table-storageazurenosql-databaseWorkers KVcloudflare-workers-kvcloudflarenosql-databaseApache Accumuloaccumulonosql-databaseAerospike Databaseaerospikenosql-databaseApache Cassandracassandranosql-databaseCouchbasecouchbasenosql-databaseApache CouchDBcouchdbnosql-databaseDataStax Enterprisedatastax-enterprisenosql-databaseFoundationDBfoundationdbnosql-databaseApache HBasehbasenosql-databaseMarkLogic Servermarklogicnosql-databaseMongoDBmongodbnosql-databaseMongoDB Atlasmongodb-atlasnosql-databaseGeneric NoSQL databasenosql-databasenosql-databaseNoSQL storenosql-storenosql-databaseOrientDBorientdbnosql-databaseRavenDBravendbnosql-databaseRethinkDBrethinkdbnosql-databaseRiak KVriaknosql-databaseScyllaDBscylladbnosql-databaseTiKVtikvnosql-databaseYDBydbnosql-databaseGoogle Cloud Bigtablebigtablegcpnosql-databaseGoogle Cloud Firestorefirestoregcpnosql-databaseCloud Healthcare APIgoogle-cloud-healthcare-apigcpnosql-databaseFirebase Realtime Databasegoogle-firebase-realtime-databasegcpnosql-databaseFirestore in Datastore modegoogle-firestore-datastore-modegcpnosql-database
and 6 more → NoSQL database page
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# Amazon DocumentDB (with MongoDB compatibility): cluster whose storage keeps six copies of the data
# across three Availability Zones. "Encrypting Amazon DocumentDB data at rest" says console-created
# clusters have encryption at rest enabled by default and that backups are always enabled for at least
# 1 day; "Encrypting data in transit" says TLS is enabled by default for newly created clusters.
schemaVersion: "1"
type: "component"
id: "aws-documentdb"
kind: "nosql-database"
provider: "aws"
docs: "https://docs.aws.amazon.com/documentdb/latest/developerguide/encryption-at-rest.html"
defaults:
  managed: true
  model: "document"
  consistency: "tunable"
  replication: "single-region"
  replicationFactor: 6
  backupEnabled: true
  backupRetentionDays: 1
  encryptionAtRest: true
properties:
  clusterType:
    type: "enum"
    values: ["instance-based", "elastic"]
    default: "instance-based"
  tls:
    type: "boolean"
    default: true
  storageConfiguration:
    type: "enum"
    values: ["standard", "io-optimized"]
    default: "standard"
  globalCluster:
    type: "boolean"
    default: false

The same page as markdown, for an agent: /catalogue/components/aws-documentdb.md