Amazon DocumentDB(兼容 MongoDB)是什么
Amazon DocumentDB(与 MongoDB 兼容) 是一种快速、可靠、完全托管的数据库服务。Amazon DocumentDB 可在云中轻松设置、操作和扩展与 MongoDB 兼容的数据库。借助 Amazon DocumentDB,您可以运行与 MongoDB 相同的应用程序代码,并使用与 MongoDB 相同的驱动程序和工具。
在使用 Amazon DocumentDB 之前,您应查看 工作方式 中所述的概念和功能。之后,完成 入门指南 中的步骤。
Amazon DocumentDB 概述
以下是 Amazon DocumentDB 的一些高级功能:
-
Amazon DocumentDB 支持两个类型的集群:基于实例的集群和弹性集群。弹性集群支持每秒数百万次读/写和 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) 的授权。它在 AWS GovCloud(美国)区域获得了 FedRAMP 高基准授权,并在 AWS 美国东部/西部区域获得了 FedRAMP 适度授权。有关 AWS 和合规性工作的详细信息,请参阅 AWS 按合规性计划提供的范围内服务
。
如果您是初次使用 AWS 服务,请使用以下资源了解更多信息:
-
AWS 提供针对计算、数据库、存储、分析和其他功能的服务。对于所有 AWS 服务的概述,请参阅 Amazon Web Services 的云计算
。 -
AWS 提供了丰富的数据库服务。有关最适合您环境的服务的指南,请参阅 AWS 上的数据库
。
集群
一个集群包含 0 到 16 个实例和一个管理这些实例的数据的集群存储卷。所有写入操作都通过主实例完成。所有实例(主实例和副本实例)都支持读取。集群的数据存储在集群卷中,副本存储在三个不同的可用区中。
Amazon DocumentDB 5.0 基于实例的集群支持数据库集群采用以下两种存储配置:Amazon DocumentDB 标准配置和 Amazon DocumentDB I/O 优化配置。有关更多信息,请参阅Amazon DocumentDB 集群存储配置。
实例
Amazon DocumentDB 实例是在云中运行的独立数据库环境。一个实例可以包含多个由用户创建的数据库。您可以使用 AWS Management Console或 AWS CLI 创建和修改实例。
实例的计算和内存容量由其实例类决定。您可以选择最能满足您需求的实例。如果一段时间后您的需求出现了变化,可以选择其他实例类。有关实例类的规格,请参阅实例类规格。
Amazon DocumentDB 实例仅在 Amazon VPC 环境中运行。Amazon VPC 允许您控制您的虚拟联网环境:可以选择自己的 IP 地址范围、创建子网以及配置路由和访问控制列表 (ACL)。
在创建 Amazon DocumentDB 实例之前,您必须创建一个集群以包含实例。
并非每个区域都支持所有实例类。下表显示了每个区域支持的实例类。
实例类 | |||||
---|---|---|---|---|---|
区域 | R6G | R5 | R4 | T4G | T3 |
美国东部(俄亥俄州) |
支持 |
支持 |
支持 |
支持 |
支持 |
美国东部(弗吉尼亚州北部) |
支持 |
支持 |
支持 |
支持 |
支持 |
美国西部(俄勒冈州) |
支持 |
支持 |
支持 |
支持 |
支持 |
非洲(开普敦) |
支持 |
支持 |
支持 |
支持 |
|
南美洲(圣保罗) |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(香港) |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(海得拉巴) |
支持 |
支持 |
|||
亚太地区(孟买) |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(首尔) |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(悉尼) |
支持 |
支持 |
支持 |
支持 |
|
亚太地区(新加坡) |
支持 |
支持 |
支持 |
支持 |
|
Asia Pacific (Tokyo) |
支持 |
支持 |
支持 |
支持 |
|
加拿大(中部) |
支持 |
支持 |
支持 |
支持 |
|
欧洲地区(法兰克福) |
支持 |
支持 |
支持 |
支持 |
|
欧洲地区(爱尔兰) |
支持 |
支持 |
支持 |
支持 |
支持 |
欧洲地区(伦敦) |
支持 |
支持 |
支持 |
支持 |
|
欧洲地区(米兰) |
支持 |
支持 |
支持 |
支持 |
|
欧洲地区(巴黎) |
支持 |
支持 |
支持 |
支持 |
|
欧洲(西班牙) |
支持 |
支持 |
支持 |
支持 |
|
中东(阿联酋) |
支持 |
支持 |
支持 |
支持 |
|
中国(北京)区域 |
支持 |
支持 |
支持 |
支持 |
|
中国(宁夏) |
支持 |
支持 |
支持 |
支持 |
|
AWS GovCloud(美国西部) | 支持 |
支持 |
支持 |
支持 |
|
AWS GovCloud(美国东部) | 支持 |
支持 |
支持 |
支持 |
区域和可用区
区域和可用区定义集群和实例的物理位置。
区域
AWS 云计算资源安置在世界不同地区 (例如:北美、欧洲或亚洲) 的高度可用的数据中心设施内。每个数据中心位置称为一个地区。
从设计而言,每个 AWS 区域都与其他 AWS 区域完全隔离。每个区域内有多个可用区。在不同的可用区内启动节点,可以实现可能的最大容错。下图显示了 AWS 区域和可用区如何工作的宏观视图。
可用区
每个AWS 区域包含多个称为可用区的不同位置。每个可用区都被设计成不受其他可用区故障的影响,并提供低价、低延迟的网络连接,以连接到同一地区的其他可用区。通过在多个可用区中启动给定集群的实例,您可以防止应用程序出现可用区故障,尽管这种情况很少发生。
Amazon DocumentDB 架构将存储和计算分开。对于存储层,Amazon DocumentDB 会在三个 AWS 可用区中复制 6 个数据副本。例如,如果您在仅支持两个可用区的区域中启动 Amazon DocumentDB 集群,则系统会在三个可用区中以六种方式复制您的数据存储,但只有两个可用区中会有计算实例。
下表列出了在给定 AWS 区域 中可用来为集群预配置计算实例的可用区数量。
区域名称 | 区域 | 可用区(计算) |
---|---|---|
美国东部(俄亥俄州) |
|
3 |
美国东部(弗吉尼亚州北部) |
|
6 |
美国西部(俄勒冈州) |
|
4 |
非洲(开普敦) |
|
3 |
南美洲(圣保罗) |
|
3 |
亚太地区(香港) |
|
3 |
亚太地区(海得拉巴) |
|
3 |
亚太地区(孟买) |
|
3 |
亚太地区(首尔) |
|
4 |
亚太地区(新加坡) |
|
3 |
亚太地区(悉尼) |
|
3 |
Asia Pacific (Tokyo) |
|
3 |
加拿大(中部) |
|
3 |
中国(北京)区域 |
|
3 |
中国(宁夏) |
|
3 |
欧洲地区(法兰克福) |
|
3 |
欧洲地区(爱尔兰) |
|
3 |
欧洲地区(伦敦) |
|
3 |
欧洲地区(米兰) |
|
3 |
欧洲地区(巴黎) |
|
3 |
欧洲(西班牙) |
|
3 |
中东(阿联酋) |
|
3 |
AWS GovCloud(美国西部) |
|
3 |
AWS GovCloud(美国东部) |
|
3 |
Amazon DocumentDB 定价
Amazon DocumentDB 集群根据以下组件进行计费:
-
实例小时数(按小时) — 根据实例的实例类(例如,
db.r5.xlarge
)。定价以每小时为单位列出,但账单向下计算至秒,并以十进制形式显示时间。Amazon DocumentDB 使用量以一秒的增量进行计费,时长最少 10 分钟。有关更多信息,请参阅 管理实例类。 -
I/O 请求数(每月每 100 万个请求) — 您在计费周期中发出的存储 I/O 请求总数。
-
备份存储(每月每 GiB) — 备份存储是指与自动数据库备份和拍摄的有效数据库快照相关联的存储。延长备份保留期或增加快照创建数量,将增加数据库所消耗的备份存储。备份存储以 GB 月使用量为单位计量,每秒计量方式不适用。有关更多信息,请参阅 在 Amazon DocumentDB 中进行备份和还原。
-
数据传输(GB 数) — 从 Internet 或其他 AWS 区域传入和传出实例的数据。
有关详细信息,请参阅Amazon DocumentDB 定价
免费试用
你可以使用 1 个月免费试用期免费试用 Amazon DocumentDB。有关更多信息,请参阅 Amazon DocumentDB 定价
监控
您可以使用多种方法对实例性能和运行状况进行跟踪。您可以免费使用 Amazon CloudWatch 服务监控实例的性能和运行状况。您可以查找 Amazon DocumentDB 控制台上的性能图表。您可以订阅 Amazon DocumentDB 事件,以便在实例、快照、参数组或者安全组发生更改时收取通知。
有关更多信息,请参阅下列内容:
接口
有多种方式可供您与 Amazon DocumentDB 进行交互,包括 AWS Management Console 和 AWS CLI。
AWS Management Console
AWS Management Console是一个基于 Web 的简单用户界面。您可以从控制台中管理集群和实例,而无需进行任何编程。要访问 Amazon DocumentDB 控制台,请登录AWS Management Console并通过以下网址打开 Amazon DocumentDB 控制台:https://console.aws.amazon.com/docdb
AWS CLI
您可以使用 AWS Command Line Interface (AWS CLI) 管理您的 Amazon DocumentDB 集群和实例。只需极少配置即可从您喜爱的终端程序开始使用 Amazon DocumentDB 控制台提供的所有功能。
-
要安装 AWS CLI,请参阅安装 AWS 命令行界面。
-
要开始使用 Amazon DocumentDB 的 AWS CLI,请参阅 Amazon DocumentDB 的AWS 命令行界面参考。
mongo shell
要连接到您的集群以创建、读取、更新和删除您的数据库中的文档,可以将 mongo
shell 与 Amazon DocumentDB 结合使用。要下载并安装 mongo
4.0 shell,请参阅 步骤 2:安装 mongo shell。
MongoDB 驱动程序
要针对 Amazon DocumentDB 集群开发和编写应用程序,您还可以将 MongoDB 驱动程序与 Amazon DocumentDB 结合使用。
接下来做什么?
上面章节为您介绍了 Amazon DocumentDB 提供的基本基础设施组件。您下一步该做什么? 根据您的情况,请参阅以下主题之一了解其用法:
-
通过使用 AWS CloudFormation 使用 AWS CloudFormation 的 Amazon DocumentDB 快速入门 创建集群和实例开始使用 Amazon DocumentDB。
-
通过使用 入门指南 中的说明创建集群和实例开始使用 Amazon DocumentDB。
-
通过使用 开始使用 Amazon DocumentDB 弹性集群 中的说明创建弹性集群开始使用 Amazon DocumentDB。
-
使用 迁移到 Amazon DocumentDB 中的指南将您的 MongoDB 实现迁移到 Amazon DocumentDB