跳至主要内容

Amazon Aurora 文档

概述

Amazon Aurora 是专为云构建的一种兼容 MySQL 和 PostgreSQL 的关系数据库,该服务既具有传统企业数据库的性能和可用性,又具有开源数据库的精简性和成本效益。

Amazon Aurora 由 Amazon Relational Database Service(RDS)托管,Amazon RDS 可以自动执行各种耗时的管理任务,例如硬件调配、数据库的设置、修补和备份。

Amazon Aurora 采用分布式、有容错能力并且可以自我修复的存储系统,这个系统可以自动使每个数据库实例最高扩展到 128TB。该服务可实现高性能和高可用性,支持多达 15 个低延迟读取副本、时间点恢复、持续备份到 Amazon S3,以及跨三个可用区(AZ)复制。

性能和可扩展性

高吞吐量

Amazon Aurora 使用各种不同的软件和硬件技术来确认数据库引擎能够充分利用可用计算、内存和联网。I/O 操作使用 Quorum 等分布式系统技术来提高性能一致性。

一键式计算扩展

使用 Amazon RDS API 或亚马逊云科技管理控制台,便能扩展计算和内存资源,为扩大或减小部署规模提供支持。 

存储自动扩缩

随着数据库存储需求增长,Amazon Aurora 会自动增加您的数据库卷大小。您的卷将以 10 GB 的增量增长,最多可增长到 128 TB。 

低延迟只读副本

通过创建最多 15 个数据库 Aurora 副本,提高读取吞吐量以支持大容量应用程序请求。Amazon Aurora 副本与源实例共享相同的底层存储,从而可以帮助降低成本并避免在副本节点处执行写入操作。这有助于腾出更多的处理能力来处理读取请求,并减少副本延迟时间。Aurora 提供一个读取器端点,应用程序可以直接连接,不必跟踪副本的添加和删除。Aurora 还支持自动扩缩功能,可以通过自动添加和删除副本来响应您指定的性能指标的变化。

Aurora 支持跨区域只读副本。跨区域副本为您的用户提供快速本地读取,并且每个区域可以具有 15 个额外 Aurora 副本以进一步扩展本地读取。您可以在 Global Database(可以提供更好的复制性能)和基于二进制日志的传统复制之间进行选择。您还可以使用外部 MySQL 数据库设置自己的二进制日志复制。

无服务器配置

Amazon Aurora Serverless 是一种面向 Aurora 的按需自动扩缩配置,可以根据应用程序的需求来自动启动、关闭以及扩展或缩减数据库容量。Aurora Serverless 有助于在云中运行数据库,而无需管理任何数据库实例。

自定义数据库端点

自定义端点有助于在不同数据库实例集之间分配工作负载并对其执行负载均衡。例如,您可以预置一组 Aurora 副本以使用具有更高内存容量的实例类型,以便运行分析工作负载。然后,自定义端点可以帮助您将分析工作负载路由到这些经过适当配置的实例,同时使其他实例与此工作负载隔离。

Parallel Query

Amazon Aurora Parallel Query 可对当前数据提供更快的分析查询。该服务可以加快查询速度,同时保持核心事务工作负载的高吞吐量。通过将查询处理向下推送到 Aurora 存储层,它不仅获得了计算能力,还减少了网络流量。使用 Parallel Query 可在同一个 Aurora 数据库中互不干扰地运行事务和分析工作负载。
 

可用性和持久性

实例监控和修复

Amazon RDS 可持续监控您的 Amazon Aurora 数据库和底层 EC2 实例的运行状况。发生数据库故障时,Amazon RDS 将自动重启数据库及相关进程。Amazon Aurora 不需要对数据库重做日志进行崩溃恢复回放,因此大大缩短了重启时间。它还将数据库缓冲区缓存与数据库进程隔离,从而在数据库重启时保留缓存。

包含 Aurora 副本的多可用区部署

出现实例故障时,Amazon Aurora 使用 RDS 多可用区技术来自动失效转移到您在三个可用区任何一个中创建的一个 Amazon Aurora 副本(最多可创建 15 个)。如果没有预置 Amazon Aurora 副本,当出现故障时,Amazon RDS 会尝试为您自动创建一个新的 Amazon Aurora 数据库实例。您还可以使用适用于 MySQL 的 Amazon JDBC 驱动程序(一种可以用作 MySQL Connector/J 驱动程序的直接替代品的开源驱动程序)将失效转移时间降至最低。

Global Database

对于全球分布的应用程序,您可以使用 Global Database,其中单个 Aurora 数据库可以跨多个亚马逊云科技区域,以实现快速本地读取和灾难恢复。Global Database 使用基于存储的复制来跨多个亚马逊云科技区域复制数据库。您可以使用辅助区域作为备份选项,以防您需要从区域性降级或中断中快速恢复。可以将辅助区域中的数据库提升为具有完全读/写能力。

容错和自我修复存储

每 10GB 的数据库卷组块都能在三个可用区间进行六路复制。Amazon Aurora 使用容错存储,它能够以透明方式应对最多两个数据副本丢失的情况,而不会影响数据库写入可用性,还能在不影响读取可用性的情况下应对最多三个副本丢失的情况。Amazon Aurora 存储还具有自我修复能力,可连续扫描数据块和磁盘有无错误并自动更换。

自动、连续、增量备份和时间点恢复

Amazon Aurora 的备份功能旨在为您的实例启用时间点恢复。这样,您就能够将数据库还原到保留期内任何一秒钟的状态,最多可恢复到前五分钟的状态。您的备份保留期最长可配置为 35 天。备份存储在 Amazon S3 中。Amazon Aurora 备份具有自动、增量和连续性,且对数据库性能没有影响。

数据库快照

数据库快照是用户启动的对您存储在 Amazon S3 中的实例的备份,这些快照将会保留到您明确删除它们为止。它们利用自动增量快照来减少所需的时间和存储空间。您可以根据需要随时从数据库快照创建新实例。

Backtrack 回滚

您可使用 Backtrack 将数据库快速倒回之前的时间点,而不需要利用备份还原数据。这使您可以从用户错误(例如删错表或行)中恢复。当您启用 Backtrack 后,Aurora 将保留指定的 Backtrack 持续时间段内的数据记录。例如,您可以将 Backtrack 设置为最高可以将数据库回退 72 小时。Backtrack 在几秒钟内即可完成,即使针对大型数据库也是如此,因为无需复制任何数据记录。您可以向前和向后回溯,以找到错误发生前的时间点。

Backtrack 对于开发和测试可能也十分有用,特别是测试删除或以其他方式导致数据无效的情形下。只需回溯到原始数据库状态,您就可以进行下一次测试。您可以创建一个通过 API 调用 Backtrack 的脚本,然后再运行测试,以便轻松地将其集成到您的测试框架中。
 

高度安全

网络隔离

Amazon Aurora 在 Amazon VPC 中运行,这使您可以将数据库隔离在自己的虚拟网络中,并使用加密 IPsec VPN 与您的本地 IT 基础设施连接。此外,使用 Amazon RDS,您可以配置防火墙设置并控制对数据库实例的网络访问。

资源级权限

Aurora 与 Amazon Identity and Access Management(IAM)集成,并使您能够控制您的 Amazon IAM 用户和组可对特定 Aurora 资源(如数据库实例、数据库快照、数据库参数组、数据库事件订阅、数据库选项组)采取的操作。此外,您还可以标记您的 Aurora 资源,并控制您的 IAM 用户和组可以对具有相同标签(和标签值)的资源组采取的操作。 

加密

Amazon Aurora 允许您使用通过 Amazon Key Management Service(KMS)创建和控制的密钥加密您的数据库。在使用 Amazon Aurora 加密来运行的数据库实例上,静态存储于底层存储的数据都将加密,同一集群中的自动备份、快照和副本也是如此。Amazon Aurora 使用 SSL(AES-256)保护传输中数据。

高级审计

Amazon Aurora 允许您记录数据库事件,且对数据库性能的影响最小。稍后可以对日志进行分析,以实现数据库管理、安全、治理、监管合规和其他目的。您还可以通过将审计日志发送到 Amazon CloudWatch 来监控活动。

托管

使用

只需使用 Amazon RDS 管理控制台或一个 API 调用或 CLI 即可启动新的 Amazon Aurora 数据库实例。Amazon Aurora 数据库实例预先配置了适合您选择的数据库实例类的参数和设置。您可以在几分钟内启动数据库实例并连接应用程序,无需进行额外配置。数据库参数组提供对数据库的精细控制和微调。

监控和指标

Amazon Aurora 可为您的数据库实例提供 Amazon CloudWatch 指标。您可以使用亚马逊云科技管理控制台查看您的数据库实例的超过 20 个关键运营指标,包括计算、内存、存储、查询吞吐量、缓存命中率和活动连接数。此外,您还可以使用增强监控收集运行数据库的操作系统实例的各项指标。最后,您可以使用 Amazon RDS Performance Insights(一种数据库监控工具,使您可以检测数据库性能问题并采取纠正措施),该工具提供了一个可视化数据库负载的控制面板。

自动软件修补

Amazon Aurora 可以使用最新可用的修补程序使您的数据库保持最新状态。您可以通过数据库引擎版本管理控制是否以及何时修补实例。Aurora 尽可能使用零停机修补:如果出现合适的时段,则会就地更新实例,在修补过程中,应用程序会话将保留并且数据库引擎会重启,只会导致吞吐量短暂下降。

数据库事件通知

Amazon Aurora 可通过电子邮件或短信通知您重要的数据库事件,例如自动失效转移。您可以使用亚马逊云科技管理控制台或 Amazon RDS API 来订阅与 Amazon Aurora 数据库相关的 40 多种不同的数据库事件。

快速数据库克隆

Amazon Aurora 支持克隆操作,可完整克隆数 TB 的数据库集群。克隆可用于实现许多目的,其中包括应用程序开发、测试、数据库更新以及运行分析查询。如果数据立即可用,则可以加快软件开发和升级项目,并提高分析准确度。

数据库启动/停止

您可以手动停止和启动 Amazon Aurora 数据库,从而可以更轻松、更经济地将 Aurora 用于无需数据库始终运行的开发和测试目的。 

迁移支持

Amazon Aurora 将企业级安全性、性能、高可用性和持久性与 MySQL 的易用性结合在一起。这使得 Amazon Aurora 成为将工作负载从昂贵的商用数据库迁移到亚马逊云科技时的首选迁移目标。MySQL 具备各种功能,使其成为各种数据库工作负载的最佳数据库,适合从简单事务应用程序到具有复杂 SQL 和存储过程的复杂 OLTP 和 OLAP 工作负载。

可将标准的 MySQL 导入和导出工具与 Amazon Aurora 配合使用。您还可以根据 Amazon RDS for MySQL 数据库快照创建新的 Amazon Aurora 数据库。基于数据库快照的迁移操作可在一个小时内完成,但具体根据所迁移的数据量和格式而异。

您还可以在 Aurora MySQL 数据库和在亚马逊云科技内部或外部运行的外部 MySQL 数据库之间设置基于二进制日志的复制。
 

开发人员工作效率

机器学习

Aurora 直接从数据库提供机器学习功能,让您可以通过熟悉的 SQL 编程语言将基于机器学习的预测添加到您的应用程序中。通过 Aurora 与亚马逊云科技机器学习服务之间的集成,您可以访问一系列机器学习算法,而无需构建自定义集成或移动数据。 

RDS 代理支持

Aurora 可以与 Amazon RDS 代理(托管的高度可用数据库代理)结合使用,使应用程序更加可扩展,对数据库故障有更强的恢复能力,并且更具安全性。RDS 代理允许应用程序汇集和共享与数据库建立的连接,从而提高数据库效率和应用程序的可扩展性。该代理可在保留应用程序连接的同时连接到新数据库实例,从而缩短失效转移时间。该代理还可以通过与 Amazon IAM 和 Amazon Secrets Manager 的集成来增强安全性。

其他信息

有关服务控制、安全特性及功能的其他信息,包括有关存储、检索、修改、限制和删除数据的信息,请参见 https://docs.amazonaws.cn/。以上链接包含的信息不构成光环新网关于亚马逊云科技(北京区域)的客户协议或西云数据关于亚马逊云科技(宁夏区域)的客户协议的“文档”的一部分,也不构成您与光环新网或西云数据之间就您使用亚马逊云科技中国区域服务达成的其他协议的任何部分。