Amazon Redshift
集群管理指南 (API 版本 2012-12-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

分析工作负载性能

您可以通过查看控制台中的工作负载执行细分图表,详细查看工作负载的性能。我们用 CloudWatch QueryRuntimeBreakdown 指标提供的数据生成图表。使用此图表,您可以看到查询在各个处理阶段(如等待和规划)中花费的时间。

注意

未显示单节点集群的工作负载执行细分图表。

下面的指标列表描述了各个处理阶段:

  • QueryPlanning:分析和优化 SQL 语句所花的时间。

  • QueryWaiting:在工作负载管理 (WLM) 队列中等待的时间。

  • QueryExecutingRead:运行读取查询所花的时间。

  • QueryExecutingInsert:运行插入查询所花的时间。

  • QueryExecutingDelete:运行删除查询所花的时间。

  • QueryExecutingUpdate:运行更新查询所花的时间。

  • QueryExecutingCtas:运行 CREATE TABLE AS 查询所花的时间。

  • QueryExecutingUnload:运行卸载查询所花的时间。

  • QueryExecutingCopy:运行复制查询所花的时间。

例如,Amazon Redshift 控制台中的以下图表显示了查询在计划、等待、读取和写入阶段花费的时间量。您可以将此图表中的结果与其他指标组合以进行进一步分析。在某些情况下,您的图表可能显示具有较短持续时间(由 QueryDuration 指标度量)的查询在等待阶段花费了较长时间。在这些情况下,您可以增加特定队列的 WLM 并发速率以提高吞吐量。

图解中的 y 轴是在所选时间段内运行的所有会话的累计。下图说明了 Amazon Redshift 如何聚合并发会话的查询处理。

使用工作负载执行细分图表的示例分析

下图说明了如何使用工作负载执行细分图表来优化集群的性能。在第一个示例图表中,您可以看到查询时间的大部分是在 QueryWaiting 阶段。此效果是由于 WLM 并发值较低所致。

以下图表演示了将并发调整为较高值后的查询运行时故障。在更新的图表中,您可以看到使用的大部分时间从 QueryWaiting 阶段转换到 QueryExecutingReadQueryPlanning 阶段。在这种情况下,在规划阶段花费了更多的总时间,因为在调整并发度之后,现在在时间窗口中运行更多的查询。您可以使用 WLMQueriesCompletedPerSecond 指标检查在特定时间段内运行的查询数。

这些图表演示了更改集群设置如何影响查询在各个阶段所花费的时间。在前面的情况中,由于并发设置很低,查询最初花费了相当长的时间等待。在增加并发度之后,将并行处理更多的查询,从而减少等待时间并增加查询吞吐量。

查看工作负载细分图表

您可以在控制台中查看工作负载细分图表。

查看工作负载执行细分图表

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon Redshift 控制台:https://console.amazonaws.cn/redshift/

  2. 在导航窗格中选择 Clusters (集群)

  3. 选择要分析的集群。

  4. 选择 Database Performance (数据库性能) 选项卡。