

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

# 将 Amazon Neptune 与全球数据库结合使用
<a name="neptune-global-database"></a><a name="gdb"></a><a name="globaldb"></a><a name="global_database"></a>

Amazon Neptune 全球数据库跨越多个数据库 Amazon Web Services 区域，可实现低延迟的全局读取，并在极少数中断影响整个数据库的情况下提供快速恢复。 Amazon Web Services 区域

一个 Neptune 全球数据库由一个区域中的一个主数据库集群和不同区域中最多有五个辅助数据库集群组成。

只能在主区域进行写入。辅助区域仅支持读取。每个辅助区域最多可以有 16 个读取器实例。

## Amazon Neptune 中的全球数据库
<a name="neptune-gdb-overview"></a>

使用 Neptune 全球数据库，您可以在跨多个 Amazon Web Services 区域的单个数据库上运行您的全球分布式应用程序。

Neptune 全球数据库由主 Amazon Web Services 区域 中一个用于写入数据的数据库集群和辅助 Amazon Web Services 区域中最多五个只读数据库集群组成。当您对主数据库集群执行写入操作时，Neptune 会将写入的数据复制到使用专用基础设施的所有辅助数据库集群，延迟通常不到一秒钟。

下图显示了一个跨越两个 Amazon Web Services 区域的全局数据库示例：

![\[Neptune 全球数据库具有一个主数据库集群和一个或多个辅助数据库集群。\]](http://docs.amazonaws.cn/neptune/latest/userguide/images/neptune-gdb-example.png)


您可以通过添加一个或多个只读副本实例来独立扩展每个辅助集群，以处理只读工作负载。

要执行写入操作，必须连接到主数据库集群的数据库集群端点。只有主集群才能执行写入操作。然后，如上图所示，复制由[集群存储卷](feature-overview-storage.md)而不是数据库引擎执行。

Neptune 全球数据库专为遍布全球的应用程序而设计。只读辅助数据库集群支持更靠近应用程序用户的读取操作。

Neptune 全球数据库支持两种不同的失效转移方法：
+ 要从主区域的中断中恢复，请使用[手动计划外 detach-and-promote](neptune-gdb-disaster-recovery.md#neptune-gdb-detach-and-promote)流程，即分离一个辅助群集，将其转换为独立群集，然后将其提升为新的主群集。
+ 对于计划内操作程序（例如维护），请使用[托管式计划内失效转移](neptune-gdb-disaster-recovery.md#neptune-gdb-managed-failover)，将主集群重新定位到其辅助区域之一，而不会造成数据丢失。

## 在 Amazon Neptune 中使用全球数据库的优势
<a name="neptune-gdb-advantages"></a>

使用全球数据库，您可以获得以下优势：
+ **全球读取，本地延迟** – 如果您在世界各地设有办事处，全球数据库允许您辅助区域的办公室在本地延迟的情况下访问自己所在区域的数据。
+ **可扩展辅助 Neptune 数据库集群** — 您可以通过添加只读副本数据库实例来扩展辅助集群。因为辅助集群是只读的，所以每个集群最多可以支持 16 个只读副本，而不是通常的 15 个限制。
+ **快速复制到辅助数据库集群** — 从主数据库集群到辅助数据库集群的复制速度很快，延迟通常不到一秒，对主数据库集群的性能影响很小。由于复制是在存储级别执行的，因此数据库实例资源完全可用于应用程序读取和写入工作负载。
+ **从区域范围内的中断中恢复** — 与传统复制解决方案相比，辅助数据库集群使您能够更快地将主集群移动到一个新的区域，RTO 更低且数据丢失更少（RPO 更低）。

## Amazon Neptune 中全球数据库的限制
<a name="neptune-gdb-limitations"></a>

以下限制目前适用于 全局数据库：
+ Neptune 全球数据库仅在以下 Amazon Web Services 区域可用：
  + 美国东部（弗吉尼亚州北部）：`us-east-1`
  + 美国东部（俄亥俄州）：`us-east-2`
  + 美国西部（北加利福尼亚）：`us-west-1`
  + 美国西部（俄勒冈州）：`us-west-2`
  + 加拿大西部（卡尔加里）：`ca-west-1`
  + 欧洲（西班牙）：`eu-south-2`
  + 欧洲地区（爱尔兰）：`eu-west-1`
  + 欧洲地区（伦敦）：`eu-west-2`
  + 欧洲地区（法兰克福）：`eu-central-1`
  + 亚太地区（东京）：`ap-northeast-1`
  + 亚太地区（大阪）：`ap-northeast-3`
  + 亚太地区（新加坡）：`ap-southeast-1`
  + 亚太地区（雅加达）：`ap-southeast-3`
  + 亚太地区（墨尔本）：`ap-southeast-4`
  + 亚太地区（马来西亚）：`ap-southeast-5`
  + 以色列（特拉维夫）：`il-central-1`
+  Neptune 全球数据库不支持 `db.t3.medium` 或 `db.t4g.medium` 实例类型。
+ Neptune 全球数据库不支持自动扩缩辅助数据库集群。
+ 在对该全球数据库执行主要版本升级时，无法将自定义参数组应用于全球数据库集群。相反，在全球集群的每个区域中创建自定义参数组，然后在升级后手动将它们应用于区域集群。
+ 您无法单独停止或启动全球数据库中的数据库集群。
+ 在某些情况下，辅助数据库集群中的只读副本实例可能会重新启动，包括在维护时段内进行的计划内升级。如果主集群的写入器实例重新启动或失效转移，则辅助区域中的所有实例也将重新启动。随后辅助集群将不可用，直到其所有实例与主数据库集群的写入器实例恢复同步。