View a markdown version of this page

查看 Aurora 和 RDS 数据库的建议 - AWS Compute Optimizer

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

查看 Aurora 和 RDS 数据库的建议

计算优化器为 RDS for MySQL、RDS for PostgreSQL、Amazon Aurora 数据库生成数据库实例、RDS 数据库实例存储和 Aurora 数据库集群存储建议。这些建议显示在计算优化器控制台的 Aurora 和 RDS 数据库建议以及 Aurora 和 RDS 数据库详细信息页面上。这两个页面都分为两个独立的选项卡:实例存储

  • Aurora 和 RDS 数据库建议页面

    实例

    此选项卡显示您当前的每个 Aurora 和 RDS 数据库实例、查找分类、查找原因、当前实例类型、预计节省费用和节省机会。Compute Optimizer 的首要建议列在每个实例旁边。该建议包括推荐的实例类型、 On-Demand 定价以及当前实例之间的价格差异。使用建议页面将您的当前实例与最佳推荐实例进行比较。这样做可以帮助您决定是要扩大还是缩小实例规模。

    存储

    此选项卡显示您当前的每个 RDS 实例存储卷和 Aurora 数据库集群存储配置、查找分类、当前存储类型和当前价格。计算优化器的最高建议列在您的每个卷或集群旁边。对于 RDS 数据库实例存储,它包括推荐的卷类型、建议的 IOPS、建议的价格以及当前容量与建议量之间的价格差异。对于 Aurora 数据库集群,它包括推荐的存储类型、估计的集群成本(实例、存储和 I/O)以及潜在的节省。您可以使用建议页面将您当前的存储配置与其最佳建议进行比较,这可以帮助您决定是否应更改存储类型。

    有关如何查看 Aurora 和 RDS 数据库建议的更多信息,请参阅访问 Aurora 和 RDS 数据库的建议和详细信息

  • Aurora 和 RDS 数据库详细信息页面

    实例

    此选项卡显示特定 RDS 数据库实例或 Aurora 数据库实例的优化建议。它列出了每项建议的规格,包括性能风险、价格差异和 On-Demand 定价。

    存储

    此选项卡显示针对 RDS 数据库实例存储或 Aurora 数据库集群存储的优化建议。对于 RDS 数据库实例存储,它列出了每项建议的规格,包括分配的存储、预配置 IOPS、吞吐量和存储价格差异。对于 Aurora 数据库集群,它显示存储类型建议以及按实例、存储和 I/O 组件细分的估计 I/O 成本,以及启用增强基础设施指标时的成本可变性信息。

    两个详情页面均显示利用率指标图表,您可以使用该图表将当前实例或存储与推荐选项的预计利用率指标进行比较。这些指标图有助于您更好地了解这些建议的影响。

    有关如何查看 Aurora 和 RDS 数据库详细信息的更多信息,请参阅访问 Aurora 和 RDS 数据库详情页面

建议每天刷新,最多可能需要 12 小时才能生成。请记住,计算优化器需要至少 30 小时的亚马逊 CloudWatch 指标才能为 Amazon RDS 数据库实例生成建议。有关更多信息,请参阅 资源要求

结果分类

Aurora 和 RDS 数据库建议页面上的查找结果列概述了您的 Amazon Aurora 和 RDS 数据库实例、RDS 数据库实例存储以及 Aurora 数据库集群在回顾期间的表现。

Aurora and RDS DB instances

以下发现分类适用于数据库实例。

分类 说明

Under-provisioned

当计算优化器检测到 CPU、内存、网络带宽、EBS IOPS 或 EBS 吞吐量不足时,RDS 数据库实例被视为配置不足。计算优化器会显示查找原因,例如 CPU 配置不足、内存配置不足 EBS IOPS 配置不足和网络带宽配置不足。 RDS 数据库实例预置不足可能会导致应用程序性能不佳。

Over-provisioned

当计算优化器检测到 CPU、EBS IOPS、网络带宽或 EBS 吞吐量过高时,RDS 数据库实例被视为过度配置。Compute Optimizer 会显示查找原因,例如 CPU 过度配置 EBS IOPS 过度配置网络带宽过度配置以及 EBS 吞吐量过度配置。 RDS 数据库实例预置过度可能会导致额外的基础设施成本。

已优化

当 RDS 数据库实例的规格满足工作负载的性能要求时,RDS 数据库实例即被视为已优化。对于已优化的实例,Compute Optimizer 可能会建议新一代数据库实例类或新的引擎版本可供选择。

RDS DB instance storage

以下发现分类适用于 RDS 数据库存储。

分类 说明

Under-provisioned

当计算优化器检测到分配的存储空间或 EBS 吞吐量不足时,RDS 存储卷被视为配置不足。Compute Optimizer 会显示 EBS 卷分配的存储预置不足EBS 卷吞吐量预置不足的结果原因。RDS 数据库实例存储卷预置不足可能会导致应用程序性能不佳。

Over-provisioned

当计算优化器检测到 IOPS 或 EBS 吞吐量过高时,RDS 数据库实例存储量被视为过度配置。Compute Optimizer 会显示 EBS 卷 IOPS 预置过度EBS 卷吞吐量预置过度的结果原因。数据库实例存储卷预置过度可能会导致额外的基础设施成本。

已优化

当 RDS 数据库实例存储卷的规格满足工作负载的性能要求时,存储即被视为已优化。对于已优化的数据库实例存储,Compute Optimizer 可能会建议新一代存储类型。

有关预置不足和超额预置的 RDS 数据库实例的更多信息,请参阅结果原因主题中的查看 Aurora 和 RDS 数据库的建议

Aurora DB clusters

以下发现分类适用于 Aurora 数据库集群。

分类 说明

已优化

计算优化器发现,从成本角度来看,您的 Aurora 数据库集群存储的配置需要优化。

未优化

计算优化器发现,如果您将 Aurora 数据库集群从 Aurora 标准存储切换到 Aurora 存储,则可以节省成本。 I/O-Optimized 计算优化器会显示DBClusterStorageSavingsAvailable何时将 Aurora 确定 I/O-Optimized 为首选的发现原因。

有关亚马逊 Aurora 数据库集群的更多信息,请参阅 Amazon Aurora 用户指南中的 Amazon Aurora 存储

结果原因

RDS 数据库实例建议 RDS 数据库实例详细信息页面上的 “查找原因” 列显示了 Amazon Aurora 和 RDS 数据库实例、RDS 数据库实例存储和 Aurora 数据库集群的计算优化器调查结果规范。

Aurora and RDS DB instances

以下结果原因适用于 RDS 数据库实例:

结果原因 说明

CPU 过度预调配

数据库实例的 CPU 配置可以缩小,也能满足工作负载的性能要求。这可以通过分析当前实例在回顾期间的 CPUUtilization 指标来确定。

CPU 预调配不足

数据库实例的 CPU 配置不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的 CPU 性能。这可以通过分析当前实例在回顾期间的 CPUUtilization 指标来确定。

内存预调配不足

数据库实例的内存配置不符合工作负载的性能要求,也没有可提供更好内存性能的替代实例类型。

对于 RDS MySQL 和 RDS PostgreSQL 数据库实例,如果启用了 Amazon RDS 性能见解,则通过分析当前实例的os.swap.inos.swap.out指标来确定这一点。要为 Aurora 启用性能洞察,请参阅《亚马逊 Aurora 用户指南》中的开启和关闭 Aurora 的性能洞察

对于 Aurora 数据库实例,如果启用 Amazon RDS 性能见解,则通过分析当前实例的os.memory.outOfMemoryKillCount指标来确定这一点。对于 Aurora MySQL 数据库实例,计算优化器还会分析 Aurora 内存运行状况指标。要为 Aurora 启用性能洞察,请参阅《亚马逊 Aurora 用户指南》中的开启和关闭 Aurora 的性能洞察

EBS 吞吐量过度预调配

数据库实例的 EBS 吞吐量配置可以缩小,也能满足工作负载的性能要求。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadBytesVolumeWriteBytes 指标来确定。

EBS 吞吐量预调配不足

数据库实例的 EBS 吞吐量配置不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的 EBS 吞吐量性能。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadBytesVolumeWriteBytes 指标来确定。

EBS IOPS 过度预调配

数据库实例的 EBS IOPS 配置可以缩小,也能满足工作负载的性能要求。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadOpsVolumeWriteOps 指标来确定。

EBS IOPS 预调配不足

数据库实例的 EBS IOPS 配置不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的 EBS 吞吐量性能。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadOpsVolumeWriteOps 指标来确定。

网络带宽过度预调配

数据库实例的网络带宽配置可以缩小,同时仍满足工作负载的性能要求。对于 RDS MySQL 和 RDS PostgreSQL 数据库实例,这是通过在回顾期内分析当前实例的NetworkInNetworkOut 指标来确定的。

网络带宽预调配不足

数据库实例的网络带宽配置不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的网络带宽性能。

对于 RDS MySQL 和 RDS PostgreSQL 数据库实例,这是通过在回顾期内分析当前实例的NetworkInNetworkOut指标来确定的。

对于 Aurora 数据库实例,这是通过分析回顾期间当前实例的NetworkThroughputStorageNetworkThroughput指标来确定的。

实例存储读取 IOPS 配置不足

数据库实例的实例存储读取 IOPS 限制不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的性能。对于 Aurora 数据库实例,这是通过在回顾期间分析ReadIOPSEphemeralStorage指标来确定的。

实例存储写入 IOPS 配置不足

数据库实例的实例存储写入 IOPS 限制不符合工作负载的性能要求,还有一种替代实例类型可以提供更好的性能。对于 Aurora 数据库实例,这是通过在回顾期间分析WriteIOPSEphemeralStorage指标来确定的。

数据库集群写入器配置不足

这表明 Compute Optimizer 已将这个 Aurora 数据库实例只读副本的建议与数据库集群的写入器同步,因为它的升级级别小于或等于 1。计算优化器这样做是为了帮助您保持故障转移能力。

新一代数据库实例类可用

如果当前数据库实例是上一代实例类型,Compute Optimizer 会生成此结果原因,以表明有新一代数据库实例类型可用。我们建议您使用最新一代的实例类型以获得最佳性能。

新的引擎版本可用

如果当前引擎版本已过时,Compute Optimizer 会生成此结果原因,以表明有新的引擎版本可用。

RDS DB instance storage

以下结果原因适用于 RDS 数据库实例存储。

结果原因 说明

EBS 卷分配的存储空间配置不足

EBS 卷分配给数据库实例的存储空间量不符合工作负载的性能要求,还有一种替代卷类型可以提供更好的分配存储性能。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadOpsVolumeWriteOps 指标来确定。

EBS 卷 IOPS 已超额配置

附加到数据库实例的 EBS 卷 IOPS 配置可以缩小,也能满足工作负载的性能要求。这可通过分析回顾期间附加到当前实例的 EBS 卷的 VolumeReadBytesVolumeWriteBytes 指标来确定。

EBS 容量吞吐量配置不足

数据库实例所连接的 EBS 卷吞吐量的大小不符合工作负载的性能要求,还有一种替代卷类型可以提供更好的卷吞吐量性能。

EBS 卷吞吐量过度配置

附加到数据库实例的 EBS 卷吞吐量可以缩小,也能满足工作负载的性能要求。

新一代存储类型可用

如果当前数据库实例存储是上一代存储类型,Compute Optimizer 会生成此结果原因,以表明有新一代存储类型可用。我们鼓励您使用最新一代的存储类型来获得最佳性能。

Aurora DB clusters

以下发现原因适用于 Aurora 数据库集群。

分类 说明

DBClusterStorageSavingsAvailable

通过将您的 Aurora 数据库集群从 Aurora 标准存储切换到 Aurora 存储,可以节省成本。 I/O-Optimized 您的集群的 I/O 使用模式表明,Aurora 的可预测定价模式比 Aurora I/O-Optimized 标准的可变 I/O 成本更具成本效益。当 I/O Optimized 被确定为集群的首选推荐选项时,就会出现这种发现原因。

DBClusterStorageOptionAvailable

Aurora I/O-Optimized 被发现是您的 Aurora 数据库集群的可行替代存储选项。尽管从成本角度来看,您当前的存储配置被认为是优化的,但切换到Aurora I/O-Optimized 可以带来诸如更可预测的月度成本以及通过消除可变 I/O 费用来简化预算等好处。当显示 I/O-Optimized 为集群的第二个推荐选项时,就会出现此发现原因。

AWS Graviton-based 实例推荐

查看 Amazon RDS 数据库实例建议时,您可以查看在 AWS Graviton-based 实例上运行工作负载对价格和性能的影响。为此,请在 CPU 架构首选项下拉列表中选择 Graviton (aws-arm64)。否则,选择当前以查看针对与当前 RDS 数据库实例相同的 CPU 供应商和架构而生成的建议。

当前价格建议价格价格差异价格差异(%)预估月度节省列已更新,提供当前数据库实例类型与所选 CPU 架构首选项的实例类型之间的价格比较。例如,如果您选择 Graviton (aws-arm64),则会比较当前数据库实例类型和推荐实例类型之间的价格。 Graviton-based

预计每月节省额和节省机会

预计月度节省(折扣后)

“实例”选项卡

本列列出了将工作负载从当前数据库实例或类型迁移到预留实例定价模型下的推荐类型后,您每月可节省的大致成本。要获得预留实例折扣的推荐,请激活储蓄估算模式首选项。

“存储”选项卡

此列会列出在特定折扣下,将 RDS 数据库实例存储卷从当前规格迁移到建议规格后每月可节省的大致成本。对于 Aurora 数据库集群而言,考虑到所有成本组成部分(实例、 I/O-Optimized 存储和成本),这表示在 Aurora 标准存储类型和 Aurora 存储类型之间切换所节省的 I/O 费用。要获得具有特定折扣的推荐,请激活储蓄估算模式首选项。

有关更多信息,请参阅节省估算模式

注意

如果您未激活节约估算模式首选项,则实例和存储选项卡上的此列将显示默认 On-Demand 定价折扣信息。

预计每月可节省的费用 (On-Demand)

“实例”选项卡

本列列出了在 On-Demand 定价模型下将工作负载从当前数据库实例类型迁移到推荐的实例类型后,您每月可以节省的大致成本。

“存储”选项卡

此列会列出将 RDS 数据库实例存储卷从当前规格迁移到建议规格后每月可节省的大致成本。对于 Aurora 数据库集群,这包括当前存储类型与推荐存储类型之间的总成本差异(考虑实例、存储和 I/O 成本组成部分)。

节省机会(%)

此列列出了当前实例的价格与建议的数据库实例类型的价格之间的差异百分比。如果激活了节省估算模式,Compute Optimizer 会分析预留实例定价折扣,以生成节省机会百分比。如果未激活储蓄估算模式,则计算优化器仅使用 On-Demand 定价信息。有关更多信息,请参阅节省估算模式

对于 Aurora 数据库集群存储建议,这表示当前存储类型和推荐存储类型之间总成本(实例、存储和 I/O)的百分比差异。

重要

如果您在中启用成本优化中心 AWS Cost Explorer,Compute Optimizer 将使用成本优化中心数据(包括您的特定定价折扣)来生成建议。如果未启用成本优化中心,Compute Optimizer 会使用成本管理器数据和 On-Demand 定价信息来生成您的建议。有关更多信息,请参阅《AWS Cost Management 用户指南》中的启用 Cost Explorer成本优化中心

预计每月节省额计算

对于每项建议,Compute Optimizer 使用推荐规格计算运行新 RDS 数据库实例或存储的成本。根据当前实例或存储的运行小时数,以及当前规格与建议规格之间的费率差异,计算出每月估计节省额。Compute Optimizer 控制面板上显示的 RDS 数据库实例和存储的每月估计节省额是账户中所有过度预置结果的每月估计节省额的总和。

绩效风险

RDS 数据库实例详细信息页面和 RD S 数据库实例建议页面上的性能风险列定义了当前和推荐的实例类型不满足您的工作负载要求的可能性。Compute Optimizer 为当前和推荐实例的每种规格计算个人性能风险分数。这包括 CPU、EBS 吞吐量和 EBS IOPS 等规格。当前和推荐实例的性能风险是根据所分析资源规格的最大性能风险分数计算得出的。

这些值包括“极低”、“低”、“中”、“高”和“极高”。极低的性能风险意味着预计该实例类型将始终提供足够的容量。性能风险越高意味着您应该在迁移资源之前验证实例是否满足工作负载的性能要求。决定是否要进行优化以便提高性能和/或节省资金。

比较图表

Amazon RDS 数据库详细信息页面显示您当前和推荐的 RDS 数据库实例的利用率指标图表以及回顾期内的存储数据。Compute Optimizer 使用每个 5 分钟时间间隔内的最大利用率点生成 RDS 数据库实例和存储建议。

可以更改图表以显示过去 24 小时、3 天、1 周或 2 周的数据。也可以在平均值和最大值之间更改图表的统计数据。

以下比较图表显示在 Aurora 和 RDS 数据库详细信息页面上。

RDS DB instances

显示了 RDS 数据库实例的以下图表:

图表名称 说明

CPU 使用率

数据库实例上正在使用的已分配计算单元的百分比。此指标确定在实例上运行应用程序所需的处理能力。

数据库连接(计数)

连接到数据库实例的客户端会话数。

网络接收吞吐量 (MiB/second)

数据库实例的传入(接收)网络流量,包括用于监控和复制的客户数据库流量和 Amazon RDS 流量。

网络传输吞吐量 (MiB/second)

数据库实例的传出(传输)网络流量,包括用于监控和复制的客户数据库流量和 Amazon RDS 流量。

EBS 读取操作数(每秒)

每秒的平均磁盘读取 I/O 操作数。

EBS 写入操作数(每秒)

每秒磁盘写入 I/O 操作的平均次数。

EBS 读取吞吐量 () MiB/second

每秒从磁盘读取的平均字节数。

EBS 写入吞吐量 () MiB/second

每秒写入磁盘的平均字节数。

EBS IO 余额(百分比)

您的 RDS 数据库的拆分存储桶中剩余的 I/O 积分百分比。此指标仅对基本监控可用。

EBS 字节余额(百分比)

RDS 数据库突增存储桶中剩余的吞吐量积分的百分比 此指标仅对基本监控可用。

可用存储空间

可用存储空间的大小。

数据库负载

数据库中的会话活动级别。有关更多信息,请参阅《Amazon Relational Database Service 用户指南》中的数据库负载

换入(KB)

从磁盘换入的内存量(以 KB 为单位)。

换出(KB)

换出到磁盘的内存量(以 KB 为单位)。

注意

只有启用 Amazon RDS 性能详情后,才能使用数据库负载换入(KB)换出(KB)指标。要为您的数据库实例启用性能详情,请参阅《Amazon Relational Database Service 用户指南》中的为 Amazon RDS 打开和关闭 Performance Insights

Aurora DB instances

以下图表显示了 Aurora 数据库实例:

图表名称 说明

CPU 使用率

Aurora 数据库实例占用的 CPU 百分比。

内存利用率

应用程序和操作系统分配的已用内存百分比。

数据库连接(计数)

连接到数据库实例的客户端会话数。

网络接收吞吐量 (MiB/second)

Aurora 数据库集群中每个实例从客户端接收的网络吞吐量。此吞吐量不包括 Aurora 数据库集群中的实例与集群卷之间的网络流量。

网络传输吞吐量 (MiB/second)

Aurora 数据库集群中每个实例发送到客户端的网络吞吐量。此吞吐量不包括数据库集群中的实例与集群卷之间的网络流量。

存储网络读取吞吐量 (MiB/second)

数据库集群中每个实例从 Aurora 存储子系统接收的网络吞吐量。

存储网络写入吞吐量 (MiB/second)

Aurora 数据库集群中每个实例发送到 Aurora 存储子系统的网络吞吐量。

Aurora 内存运行状况

指示内存运行状况。值 0 代表 NORMAL。值 10 代表 RESERVED,这表示服务器的内存使用量已接近临界水平。

注意

此指标仅适用于 Aurora MySQL。

被拒绝 SQL 查询的 Aurora 内存数量

作为避免发生内存不足(OOM)的一部分而拒绝的查询总数。

注意

此指标仅适用于 Aurora MySQL。

Aurora 内存已关闭的连接数

作为避免发生 OOM 的一部分而关闭的连接总数。

注意

此指标仅适用于 Aurora MySQL。

Aurora 内存中断的查询数

作为避免发生 OOM 的一部分而结束的查询总数。

注意

此指标仅适用于 Aurora MySQL。

缓冲区缓存命中率

缓冲区缓存提供的请求的百分比。当推荐使用优化读取数据库实例类类型作为选项时,会显示此图表,以帮助您评估它是否适合您的工作负载。

读取 IOPS 临时存储

对临时 NVMe 存储执行的磁盘读取操作的平均次数。

注意

该指标适用于支持本地连接的非易失性内存快速 (NVMe) 存储的实例。

写入 IOPS 临时存储

对临时 NVMe 存储执行的磁盘写入操作的平均次数。

注意

该指标适用于支持本地连接的非易失性内存快速 (NVMe) 存储的实例。

读取 IOPS

每秒平均磁盘读取 操作数。

写入 IOPS

每秒生成的 Aurora 存储写入记录数。这或多或少是由数据库生成的日志记录数。这些不对应于 8K 页写入次数,也不对应于发送的网络数据包。

数据库负载

数据库的活动会话的数量。通常,您需要活动会话的平均数量数据。在 “性能见解” 中,此数据以 db.load.avg 的形式进行查询。

有关更多信息,请参阅亚马逊 Aurora 用户指南中的亚马逊 Aurora CloudWatch 指标

注意

仅当您启用了 Aurora 性能洞察时,数据库负载图才可用。要为 Aurora 启用性能洞察,请参阅《亚马逊 Aurora 用户指南》中的开启和关闭 Aurora 的性能洞察

Aurora DB clusters

以下图表显示了 Aurora 数据库集群:

图表名称 说明

VolumeBytesUsed

您的 Aurora 数据库集群使用的存储空间量。

VolumeReadIOPs

在 5 分钟间隔内对集群卷进行的计费读取 I/O 操作的数量。

VolumeWriteIOPs

向群集卷执行的写入磁盘 I/O 操作的次数,每隔 5 分钟报告一次。