WLM 系统表和视图 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

WLM 系统表和视图

WLM 根据内部定义的 WLM 服务类配置查询队列。Amazon Redshift 根据这些服务类以及在 WLM 配置中定义的队列创建多个内部队列。在系统表中,术语队列服务类 通常可互换使用。超级用户队列使用服务类 5。用户定义的队列使用服务类 6 及更高的服务类。

您可以使用特定于 WLM 的系统表查看查询、队列和服务类的状态。查询以下系统表并注意以下事项:

  • 查看正在跟踪哪些查询,工作负载管理器分配哪些资源。

  • 查看查询被分配到哪个队列。

  • 查看工作负载管理器当前跟踪的查询的状态。

表名称 描述
STL_WLM_ERROR 包含 WLM 相关错误事件的日志。
STL_WLM_QUERY 列出 WLM 跟踪的查询。
STV_WLM_CLASSIFICATION_CONFIG 显示 WLM 的当前分类规则。
STV_WLM_QUERY_QUEUE_STATE 记录查询队列的当前状态。
STV_WLM_QUERY_STATE 提供 WLM 跟踪的查询的当前状态快照。
STV_WLM_QUERY_TASK_STATE 包含查询任务的当前状态。
STV_WLM_SERVICE_CLASS_CONFIG 记录 WLM 的服务类配置。
STV_WLM_SERVICE_CLASS_STATE 包含服务类的当前状态。
STL_WLM_RULE_ACTION 记录有关从 WLM 查询监控规则生成的与用户定义的队列关联的操作的详细信息。
STV_WLM_QMR_CONFIG 记录 WLM 查询监控规则 (QMR) 的配置。

您使用任务 ID 来跟踪系统表中的查询。下面的示例介绍如何获取最近提交的用户查询的任务 ID:

select task from stl_wlm_query where exec_start_time =(select max(exec_start_time) from stl_wlm_query); task ------ 137 (1 row)

下面的示例介绍当前正在各个服务类(队列)中执行或等待的查询。该查询在跟踪 Amazon Redshift 的整体并发工作负载时很有用:

select * from stv_wlm_query_state order by query; xid |task|query|service_| wlm_start_ | state |queue_ | exec_ | | |class | time | |time | time ----+----+-----+--------+-------------+---------+-------+-------- 2645| 84 | 98 | 3 | 2010-10-... |Returning| 0 | 3438369 2650| 85 | 100 | 3 | 2010-10-... |Waiting | 0 | 1645879 2660| 87 | 101 | 2 | 2010-10-... |Executing| 0 | 916046 2661| 88 | 102 | 1 | 2010-10-... |Executing| 0 | 13291 (4 rows)

WLM 服务类 ID

下表列出了分配到服务类的 ID 的列表。

ID 服务类
1–4 保留供系统使用。
5 由超级用户队列使用。
6–13 由在 WLM 配置中定义的手动 WLM 队列使用。
14 由短查询加速使用。
15 预留供 Amazon Redshift 运行的维护活动使用。
100–107 auto_wlm 为 true 时由自动 WLM 队列使用。