我如何知道已运行的查询的 query_group?
Posted
技术标签:
【中文标题】我如何知道已运行的查询的 query_group?【英文标题】:How do I know the query_group of a query which was run? 【发布时间】:2014-01-17 14:47:44 【问题描述】:我需要帮助来确定在 redshift 上运行的查询的 query_group 是什么。我在 wlm 配置中设置了一个 query_group,并希望确保从该查询组执行查询。
【问题讨论】:
【参考方案1】:query_group 是 WLM(工作负载管理)配置的一部分,它使您能够管理如何通过 Redshift 集群上的队列运行查询。要使用 query_group,您必须提前通过 AWS 控制台([Amazon Redshift] -> [Parameter Groups] -> Select parameter group -> [WLM])或 cli 使用 query_group 名称(标签)设置您自己的队列。
这是一个从Redshift doc 中截取的示例。
set query_group to 'Monday';
select * from category limit 1;
...
reset query_group
您必须在开始要分配给特定队列的查询之前设置query_group,并在完成后重置query_group。
您可以跟踪 query_group 的查询如下。 'label' 是 query_group 的名称。
select query, pid, substring, elapsed, label
from svl_qlog where label ='Monday'
order by query;
query | pid | substring | elapsed | label
------+------+------------------------------------+-----------+--------
789 | 6084 | select * from category limit 1; | 65468 | Monday
790 | 6084 | select query, trim(label) from ... | 1260327 | Monday
791 | 6084 | select * from svl_qlog where .. | 2293547 | Monday
792 | 6084 | select count(*) from bigsales; | 108235617 | Monday
...
本文档有助于了解 WLM 的工作原理和使用方法。
http://docs.aws.amazon.com/redshift/latest/dg/cm-c-implementing-workload-management.html这个链接是关于 query_group 的。
http://docs.aws.amazon.com/redshift/latest/dg/r_query_group.html【讨论】:
以上是关于我如何知道已运行的查询的 query_group?的主要内容,如果未能解决你的问题,请参考以下文章
mysql如何查询某字段里两个值相加结果等于已知道的一个数字