本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon DocumentDB(兼容 MongoDB)是什么
Amazon DocumentDB(与 MongoDB 兼容)是一种快速、可靠、完全托管的数据库服务。Amazon DocumentDB 可以轻松地在云中设置、操作和扩展 MongoDB-compatible 数据库。借助 Amazon DocumentDB,您可以运行与 MongoDB 相同的应用程序代码,并使用与 MongoDB 相同的驱动程序和工具。
在使用 Amazon DocumentDB 之前,您应查看 工作原理 中所述的概念和功能。之后,完成 入门指南 中的步骤。
Amazon DocumentDB 概述
以下是 Amazon DocumentDB 的一些高级功能:
-
Amazon DocumentDB 支持两个类型的集群:基于实例的集群和弹性集群。弹性集群支持 reads/writes 每秒数百万和数 PB 存储容量的工作负载。有关弹性集群的更多信息,请参阅 Amazon DocumentDB 弹性集群。以下内容涉及 Amazon DocumentDB 基于实例的集群。
-
Amazon DocumentDB 会随着您的数据库存储需求的增长而自动提高您的存储卷大小。您的存储卷以 10 GB 为增量增加,最大可扩展到 128 TiB。您无需为了满足未来增长需求而为集群预置任何多余存储空间。
-
借助 Amazon DocumentDB,您可以通过创建多达 15 个副本实例来增加读取吞吐量以支持高容量应用程序请求。Amazon DocumentDB 副本共享相同的底层存储,从而降低成本并且避免在副本节点上执行写入的需要。此功能将释放更多的处理能力来提供读取请求并降低副本延迟时间 通常可降低到几毫秒。无论存储卷大小如何,您都可以在几分钟内添加副本。Amazon DocumentDB 还提供读取器端点,从而无需在添加和删除副本时跟踪副本应用程序即可连接。
-
Amazon DocumentDB 允许您为每个实例增加或减少计算和内存资源。计算扩展操作通常可在几分钟之内完成。
-
Amazon DocumentDB 在 Amazon Virtual Private Cloud(Amazon VPC)中运行,因此您可以在自己的虚拟网络中隔离您的数据库。您还可以配置防火墙设置以控制网络访问集群。
-
Amazon DocumentDB 持续监控集群的运行状况。发生实例故障时,Amazon DocumentDB 自动重启该实例和相关进程。Amazon DocumentDB 不需要数据库重做日志的崩溃恢复重播,这大大缩短重启时间。Amazon DocumentDB 还将数据库缓存与数据库进程隔离,使缓存能够在实例重启后继续运行。
-
发生实例故障时,Amazon DocumentDB 自动将故障转移到最多 15 个 Amazon DocumentDB 副本中的一个,而这些副本是您在其他可用区中创建的。如果未预配置副本,当发生故障时,Amazon DocumentDB 尝试为您自动创建一个新的 Amazon DocumentDB 实例。
-
借助 Amazon DocumentDB 的备份功能,您可以对集群进行时间点恢复。此功能允许您将集群恢复到保留期内(最多是近 5 分钟内)任何一秒钟的状态。可将自动备份保留期配置为最长 35 天。自动备份存储在 Amazon Simple Storage Service (Amazon S3) 中,该服务专为 99.999999999% 持久性设计。Amazon DocumentDB 备份是自动、增量和连续的,不影响您的集群性能。
-
借助 Amazon DocumentDB,您可以使用自己创建和控制的密钥对数据库进行加密 AWS Key Management Service ()AWS KMS。在通过 Amazon DocumentDB 加密运行的数据库集群上,静态存储于底层存储的数据都将加密。在同一个集群中的自动备份、快照和副本也会被加密。
-
Amazon DocumentDB 已获得联邦风险与授权管理计划 (FedRAMP) 的授权。它拥有(美国)地区的 FedRAMP 高级授权, AWS GovCloud 对美国地区有 FedRAMP 中级授权。 AWS East/West 有关合规工作的详细信息 AWS 以及合规工作,请参阅合规性计划范围内的AWS 服务
。
如果您不熟悉 AWS 服务,请使用以下资源了解更多信息:
-
AWS 为计算、数据库、存储、分析和其他功能提供服务。有关所有 AWS 服务的概述,请参阅使用 Amazon Web Services 进行云计算
。 -
AWS 提供了许多数据库服务。有关最适合您环境的服务的指南,请参阅 AWS上的数据库
。
集群
一个集群包含 0 到 16 个实例和一个管理这些实例的数据的集群存储卷。所有写入操作都通过主实例完成。所有实例(主实例和副本实例)都支持读取。集群的数据存储在集群卷中,副本存储在三个不同的可用区中。
基于亚马逊 DocumentDB 5.0 实例的集群支持数据库集群的两种存储配置:亚马逊 DocumentDB 标准配置和亚马逊 DocumentDB。 I/O-optimized有关更多信息,请参阅 Amazon DocumentDB 集群存储配置。
实例
Amazon DocumentDB 实例是在云中运行的独立数据库环境。一个实例可以包含多个由用户创建的数据库。您可以使用 AWS 管理控制台 或创建和修改实例 AWS CLI。
实例的计算和内存容量由其实例类决定。您可以选择最能满足您需求的实例。如果一段时间后您的需求出现了变化,可以选择其他实例类。有关实例类的规格,请参阅实例类规格。
Amazon DocumentDB 实例仅在 Amazon VPC 环境中运行。Amazon VPC 允许您控制您的虚拟联网环境:可以选择自己的 IP 地址范围、创建子网以及配置路由和访问控制列表 (ACL)。
在创建 Amazon DocumentDB 实例之前,您必须创建一个集群以包含实例。
并非每个区域都支持所有实例类。下表显示了每个区域支持的实例类。
注意
有关每个实例类中 Amazon DocumentDB 支持的实例类型的完整列表,请参阅 实例类规格。
| 实例类 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Region | R8G | R6GD | R6G | R5 | R4 | T4G | T3 | Serverless |
美国东部(俄亥俄州) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
美国东部(弗吉尼亚州北部) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
美国西部(俄勒冈州) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
非洲(开普敦) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
南美洲(圣保罗) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
亚太地区(香港) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
亚太地区(海得拉巴) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
亚太地区(马来西亚) |
支持 |
支持 |
支持 |
|||||
亚太地区(孟买) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(大阪) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
亚太地区(首尔) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(悉尼) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(雅加达) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
亚太地区(墨尔本) |
支持 |
支持 |
支持 |
支持 |
||||
亚太地区(新加坡) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(泰国) |
支持 |
支持 |
支持 |
|||||
亚太地区(东京) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
加拿大(中部) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
加拿大西部(卡尔加里) |
支持 |
支持 |
支持 |
支持 |
||||
欧洲地区(法兰克福) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
欧洲(苏黎世) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
欧洲地区(爱尔兰) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
欧洲地区(伦敦) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
欧洲地区(米兰) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
欧洲地区(巴黎) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
欧洲(西班牙) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
|
欧洲地区(斯德哥尔摩) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
墨西哥(中部) |
支持 |
支持 |
支持 |
|||||
中东(阿联酋): |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
中国(北京) |
支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
中国(宁夏) |
支持 |
支持 |
支持 |
支持 |
支持 |
|||
以色列(特拉维夫) |
支持 |
支持 |
支持 |
支持 |
||||
| AWS GovCloud (US-West) | 支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
| AWS GovCloud (US-East) | 支持 |
支持 |
支持 |
支持 |
支持 |
支持 |
||
区域和可用区
区域和可用区定义集群和实例的物理位置。
Regions
AWS 云计算资源存放在世界不同地区(例如北美、欧洲或亚洲)的高可用性数据中心设施中。每个数据中心位置称为一个地区。
每个 AWS 区域都设计为与其他 AWS 区域完全隔离。每个区域内有多个可用区。在不同的可用区内启动节点,可以实现可能的最大容错。下图显示了 AWS 区域和可用区如何运作的高级视图。
可用区
每个 AWS 区域都包含多个不同的位置,称为可用区。每个可用区都被设计成不受其他可用区故障的影响,并提供低价、低延迟的网络连接,以连接到同一地区的其他可用区。通过在多个可用区中启动给定集群的实例,您可以防止应用程序出现可用区故障,尽管这种情况很少发生。
Amazon DocumentDB 架构将存储和计算分开。在存储层方面,Amazon DocumentDB 会在三个 AWS 可用区域中复制六份数据副本。例如,如果您在仅支持两个可用区的区域中启动 Amazon DocumentDB 集群,则系统会在三个可用区中以六种方式复制您的数据存储,但只有两个可用区中会有计算实例。
下表列出了在给 AWS 区域 定可用区中可用于为集群配置计算实例的数量。
| 区域名称 | Region | 可用区(计算) |
|---|---|---|
美国东部(俄亥俄州) |
|
3 |
美国东部(弗吉尼亚州北部) |
|
6 |
美国西部(俄勒冈州) |
|
4 |
非洲(开普敦) |
|
3 |
南美洲(圣保罗) |
|
3 |
亚太地区(香港) |
|
3 |
亚太地区(海得拉巴) |
|
3 |
亚太地区(马来西亚) |
|
3 |
亚太地区(孟买) |
|
3 |
亚太地区(大阪) |
|
3 |
亚太地区(首尔) |
|
4 |
亚太地区(新加坡) |
|
3 |
亚太地区(悉尼) |
|
3 |
亚太地区(雅加达) |
|
3 |
亚太地区(墨尔本) |
|
3 |
亚太地区(泰国) |
|
3 |
亚太地区(东京) |
|
3 |
加拿大(中部) |
|
3 |
加拿大西部(卡尔加里) |
|
3 |
中国(北京)区域 |
|
3 |
中国(宁夏) |
|
3 |
欧洲地区(法兰克福) |
|
3 |
欧洲(苏黎世) |
|
3 |
欧洲地区(爱尔兰) |
|
3 |
欧洲地区(伦敦) |
|
3 |
欧洲地区(米兰) |
|
3 |
欧洲地区(巴黎) |
|
3 |
欧洲(西班牙) |
|
3 |
欧洲地区(斯德哥尔摩) |
|
3 |
墨西哥(中部) |
|
3 |
中东(阿联酋): |
|
3 |
以色列(特拉维夫) |
|
3 |
| AWS GovCloud (US-West) |
|
3 |
| AWS GovCloud (US-East) |
|
3 |
Amazon DocumentDB 定价
Amazon DocumentDB 集群根据以下组件进行计费:
-
实例小时数(按小时):根据实例的实例类(例如,
db.r5.xlarge)。定价以每小时为单位列出,但账单向下计算至秒,并以十进制形式显示时间。Amazon DocumentDB 使用量以一秒的增量进行计费,时长最少 10 分钟。有关更多信息,请参阅 管理实例类。 -
I/O 请求(每月每 100 万个请求)-您在账单周期内发出的存储 I/O 请求总数。
-
备份存储(每月每 GiB):备份存储是指与自动数据库备份和拍摄的有效数据库快照相关联的存储。延长备份保留期或增加快照创建数量,将增加数据库所消耗的备份存储。Backup 存储按流量计费 GB-months,每秒不适用。有关更多信息,请参阅 在 Amazon DocumentDB 中进行备份和还原。
-
数据传输(每 GB)— 从您的实例传入和传出互联网或其他 AWS 地区的数据。
有关详细信息,请参阅Amazon DocumentDB 定价
免费试用
你可以使用 1 个月免费试用期免费试用 Amazon DocumentDB。有关更多信息,请参阅 Amazon DocumentDB 定价
监控
您可以使用多种方法对实例性能和运行状况进行跟踪。您可以使用免费的 Amazon CloudWatch 服务来监控实例的性能和运行状况。您可以查找 Amazon DocumentDB 控制台上的性能图表。您可以订阅 Amazon DocumentDB 事件,以便在实例、快照、参数组或者安全组发生更改时收取通知。
有关更多信息,请参阅下列内容:
接口
您可以通过多种方式与 Amazon DocumentDB 进行交互,包括 AWS 管理控制台 和。 AWS CLI
AWS 管理控制台
AWS 管理控制台 这是一个简单的基于 Web 的用户界面。您可以从控制台中管理集群和实例,而无需进行任何编程。要访问亚马逊 DocumentDB 控制台,请登录 AWS 管理控制台 并打开亚马逊文档数据库控制台,网址为。https://console.aws.amazon.com/docdb
AWS CLI
您可以使用 AWS Command Line Interface (AWS CLI) 来管理您的 Amazon DocumentDB 集群和实例。只需极少配置即可从您喜爱的终端程序开始使用 Amazon DocumentDB 控制台提供的所有功能。
-
要安装 AWS CLI,请参阅安装 AWS 命令行界面。
-
要开始使用 AWS CLI 适用于亚马逊 DocumentDB 的,请参阅亚马逊 DocumentD B 的AWS 命令行界面参考。
MongoDB 驱动程序
要针对 Amazon DocumentDB 集群开发和编写应用程序,您还可以将 MongoDB 驱动程序与 Amazon DocumentDB 结合使用。有关更多信息,请参阅 启用了 TLS 的情况下的连接 或 禁用了 TLS 的情况下的连接 中的 MongoDB Shell 选项卡。
接下来做什么?
上面章节为您介绍了 Amazon DocumentDB 提供的基本基础设施组件。您下一步该做什么? 根据您的情况,请参阅以下主题之一了解其用法:
-
使用创建集群和实例,开始使用 Amazon DocumentDB。 CloudFormation 亚马逊 DocumentDB 快速入门使用 CloudFormation
-
通过使用 入门指南 中的说明创建集群和实例开始使用 Amazon DocumentDB。
-
通过使用 开始使用 Amazon DocumentDB 弹性集群 中的说明创建弹性集群开始使用 Amazon DocumentDB。
-
使用 迁移到 Amazon DocumentDB 中的指南将您的 MongoDB 实现迁移到 Amazon DocumentDB