Amazon DocumentDB(与 MongoDB 兼容)是什么 - Amazon DocumentDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

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 中的备份功能支持您的集 point-in-time 群恢复。此功能允许您将集群恢复到保留期内(最多是近 5 分钟内)任何一秒钟的状态。可将自动备份保留期配置为最长 35 天。自动备份存储在 Amazon Simple Storage Service (Amazon S3) 中,该服务专为 99.999999999% 持久性设计。Amazon DocumentDB 备份是自动、增量和连续的,不影响您的集群性能。

  • 借助 Amazon DocumentDB,您可以使用自己创建和控制的密钥对数据库进行加密 AWS Key Management Service ()AWS KMS。在通过 Amazon DocumentDB 加密运行的数据库集群上,静态存储于底层存储的数据都将加密。在同一个集群中的自动备份、快照和副本也会被加密。

如果您不熟悉 AWS 服务,请使用以下资源了解更多信息:

集群

一个集群包含 0 到 16 个实例和一个管理这些实例的数据的集群存储卷。所有写入操作都通过主实例完成。所有实例(主实例和副本实例)都支持读取。集群的数据存储在集群卷中,副本存储在三个不同的可用区中。

Amazon DocumentDB 集群包含可用区 1 中的主实例,可写入集群卷以获取区域 2 和 3 中的副本。

基于 Amazon DocumentDB 5.0 实例的集群支持数据库集群的两种存储配置:亚马逊 DocumentDB 标准配置和亚马逊 DocumentDB I/O 优化。有关更多信息,请参阅 亚马逊 DocumentDB 集群存储配置

实例

Amazon DocumentDB 实例是在云中运行的独立数据库环境。一个实例可以包含多个由用户创建的数据库。您可以使用 AWS Management Console 或创建和修改实例 AWS CLI。

实例的计算和内存容量由其实例类决定。您可以选择最能满足您需求的实例。如果一段时间后您的需求出现了变化,可以选择其他实例类。有关实例类的规格,请参阅实例类规格

Amazon DocumentDB 实例仅在 Amazon VPC 环境中运行。Amazon VPC 允许您控制您的虚拟联网环境:可以选择自己的 IP 地址范围、创建子网以及配置路由和访问控制列表 (ACL)。

在创建 Amazon DocumentDB 实例之前,您必须创建一个集群以包含实例。

并非每个区域都支持所有实例类。下表显示了每个区域支持的实例类。

不同区域支持的实例类
实例类
区域 R6G R5 R4 T4G T3

美国东部(俄亥俄州)

支持

支持

支持

支持

支持

美国东部(弗吉尼亚州北部)

支持

支持

支持

支持

支持

US West(Oregon)

支持

支持

支持

支持

支持

南美洲(圣保罗)

支持

支持

支持

支持

亚太地区(香港)

支持

支持

支持

支持

亚太地区(海得拉巴)

支持

支持

亚太地区(孟买)

支持

支持

支持

支持

亚太地区(首尔)

支持

支持

支持

支持

亚太地区(悉尼)

支持

支持

支持

支持

亚太地区(新加坡)

支持

支持

支持

支持

亚太地区(东京)

支持

支持

支持

支持

加拿大(中部)

支持

支持

支持

支持

欧洲地区(法兰克福)

支持

支持

支持

支持

欧洲地区(爱尔兰)

支持

支持

支持

支持

支持

欧洲地区(伦敦)

支持

支持

支持

支持

欧洲地区(米兰)

支持

支持

支持

支持

欧洲地区(巴黎)

支持

支持

支持

支持

中东(阿联酋)

支持

支持

支持

支持

中国(北京)区域

支持

支持

支持

支持

中国(宁夏)

支持

支持

支持

支持

AWS GovCloud (美国西部)

支持

支持

支持

支持

AWS GovCloud (美国东部)

支持

支持

支持

支持

区域和可用区

区域和可用区定义集群和实例的物理位置。

区域

AWS 云计算资源存放在世界不同地区(例如北美、欧洲或亚洲)的高可用性数据中心设施中。每个数据中心位置称为一个地区

每个 AWS 区域都设计为与其他 AWS 区域完全隔离。每个区域内有多个可用区。在不同的可用区内启动节点,可以实现可能的最大容错。下图显示了 AWS 区域和可用区如何运作的高级视图。

亚马逊 DocumentDB 区域和可用 AWS 区域的高级视图。

可用区

每个 AWS 区域都包含多个不同的位置,称为可用区。每个可用区都被设计成不受其他可用区故障的影响,并提供低价、低延迟的网络连接,以连接到同一地区的其他可用区。通过在多个可用区中启动给定集群的实例,您可以防止应用程序出现可用区故障,尽管这种情况很少发生。

Amazon DocumentDB 架构将存储和计算分开。在存储层方面,Amazon DocumentDB 会在三个 AWS 可用区域中复制六份数据副本。例如,如果您在仅支持两个可用区的区域中启动 Amazon DocumentDB 集群,则系统会在三个可用区中以六种方式复制您的数据存储,但只有两个可用区中会有计算实例。

下表列出了在给 AWS 区域 定可用区中可用于为集群配置计算实例的数量。

区域名称 区域 可用区(计算)

美国东部(俄亥俄州)

us-east-2

3

美国东部(弗吉尼亚州北部)

us-east-1

6

US West(Oregon)

us-west-2

4

南美洲(圣保罗)

sa-east-1

3

亚太地区(香港)

ap-east-1

3

亚太地区(海得拉巴)

ap-south-2

3

亚太地区(孟买)

ap-south-1

3

亚太地区(首尔)

ap-northeast-2

4

亚太地区(新加坡)

ap-southeast-1

3

亚太地区(悉尼)

ap-southeast-2

3

亚太地区(东京)

ap-northeast-1

3

加拿大(中部)

ca-central-1

3

中国(北京)区域

cn-north-1

3

中国(宁夏)

cn-northwest-1

3

欧洲地区(法兰克福)

eu-central-1

3

欧洲地区(爱尔兰)

eu-west-1

3

欧洲地区(伦敦)

eu-west-2

3

欧洲地区(米兰)

eu-south-1

3

欧洲地区(巴黎)

eu-west-3

3

中东(阿联酋)

me-central-1

3

AWS GovCloud (美国西部)

us-gov-west-1

3

AWS GovCloud (美国东部)

us-gov-east-1

3

Amazon DocumentDB 定价

Amazon DocumentDB 集群根据以下组件进行计费:

  • 实例小时数(按小时) — 根据实例的实例类(例如,db.r5.xlarge)。定价以每小时为单位列出,但账单向下计算至秒,并以十进制形式显示时间。Amazon DocumentDB 使用量以一秒的增量进行计费,时长最少 10 分钟。有关更多信息,请参阅 管理实例类

  • I/O 请求数(每月每 100 万个请求) — 您在计费周期中发出的存储 I/O 请求总数。

  • 备份存储(每月每 GiB) — 备份存储是指与自动数据库备份和拍摄的有效数据库快照相关联的存储。延长备份保留期或增加快照创建数量,将增加数据库所消耗的备份存储。备份存储以 GB 月使用量为单位计量,每秒计量方式不适用。有关更多信息,请参阅 在 Amazon DocumentDB 中进行备份和恢复

  • 数据传输(每 GB)— 从您的实例传入和传出互联网或其他 AWS 地区的数据。

有关详细信息,请参阅Amazon DocumentDB 定价

免费试用

你可以使用 1 个月免费试用期免费试用 Amazon DocumentDB。有关更多信息,请参阅 Amazon DocumentDB 定价中的免费试用期或参阅 Amazon DocumentDB 免费试用期常见问题解答

监控

您可以使用多种方法对实例性能和运行状况进行跟踪。您可以使用免费的 Amazon CloudWatch 服务来监控实例的性能和运行状况。您可以查找 Amazon DocumentDB 控制台上的性能图表。您可以订阅 Amazon DocumentDB 事件,以便在实例、快照、参数组或者安全组发生更改时收取通知。

有关更多信息,请参阅下列内容:

接口

您可以通过多种方式与 Amazon DocumentDB 进行交互,包括 AWS Management Console 和。 AWS CLI

AWS Management Console

AWS Management Console 这是一个简单的基于 Web 的用户界面。您可以从控制台中管理集群和实例,而无需进行任何编程。要访问亚马逊 DocumentDB 控制台,请登录 AWS Management Console 并打开亚马逊 DocumentDB 控制台,网址为 https://console.aws.amazon.com/docdb。

AWS CLI

您可以使用 AWS Command Line Interface (AWS CLI) 来管理您的 Amazon DocumentDB 集群和实例。只需极少配置即可从您喜爱的终端程序开始使用 Amazon DocumentDB 控制台提供的所有功能。

mongo Shell

要连接到您的集群以创建、读取、更新和删除您的数据库中的文档,可以将 mongo shell 与 Amazon DocumentDB 结合使用。要下载并安装 mongo 4.0 shell,请参阅 步骤 4:安装 mongo shell

MongoDB 驱动程序

要针对 Amazon DocumentDB 集群开发和编写应用程序,您还可以将 MongoDB 驱动程序与 Amazon DocumentDB 结合使用。

接下来做什么?

上面章节为您介绍了 Amazon DocumentDB 提供的基本基础设施组件。您下一步该做什么? 根据您的情况,请参阅以下主题之一了解其用法: