如何用SnowSQL查询特定WH与RM的高信用配额消耗历史查询
SnowSQL 查询特定Warehouse和Resource Monitor下高信用消耗的历史查询
你可以通过Snowflake的INFORMATION_SCHEMA视图组合查询,精准筛选目标仓库和资源监控下的高信用消耗历史查询。以下是直接可用的SnowSQL语句:
SELECT qh.QUERY_ID, qh.QUERY_TEXT, qh.WAREHOUSE_NAME, w.RESOURCE_MONITOR_NAME, qh.CREDITS_USED, qh.START_TIME, qh.END_TIME, ROUND(qh.TOTAL_ELAPSED_TIME / 1000, 2) AS ELAPSED_SECONDS, qh.USER_NAME, qh.ROLE_NAME FROM TABLE(INFORMATION_SCHEMA.QUERY_HISTORY( DATEADD(DAY, -7, CURRENT_TIMESTAMP()), -- 自定义查询时间范围,示例为过去7天 CURRENT_TIMESTAMP() )) qh JOIN INFORMATION_SCHEMA.WAREHOUSES w ON qh.WAREHOUSE_NAME = w.WAREHOUSE_NAME WHERE w.RESOURCE_MONITOR_NAME = 'YOUR_TARGET_RM_NAME' -- 替换为你的资源监控名称 AND qh.WAREHOUSE_NAME = 'YOUR_TARGET_WH_NAME' -- 替换为你的仓库名称 AND qh.CREDITS_USED > 0.1 -- 自定义信用消耗阈值,筛选高消耗查询 ORDER BY qh.CREDITS_USED DESC;
关键说明
- 关联逻辑:通过
WAREHOUSES视图获取仓库绑定的资源监控名称,确保只返回目标RM下的查询 - 时间范围:修改
DATEADD(DAY, -7, CURRENT_TIMESTAMP())中的天数,可调整查询的历史时间区间 - 阈值调整:修改
CREDITS_USED > 0.1的数值,过滤掉低信用消耗的查询 - 字段扩展:如果需要更多查询细节,可添加
qh.ROWS_PRODUCED、qh.ROWS_SCANNED等字段
内容的提问来源于stack exchange,提问作者Vicky
相关产品推荐
相关产品推荐

