■ はじめに
https://dk521123.hatenablog.com/entry/2023/08/03/000817
で、Snowflakeのトラブルシューティングのための統計情報を取得する方法を 扱っていたが、 今日、QUERY_HISTORY ビューを使って、トラブルシュートしたので 改めて、別冊で扱ってみた。
目次
【1】QUERY_HISTORY ビュー 【2】得られる情報 【3】使用上の注意 【4】サンプル 1)トラブルシュートのためのクエリ実行一覧表示 2)クエリ実行一覧から何件更新されたかを表示
【1】QUERY_HISTORY ビュー
https://docs.snowflake.com/ja/sql-reference/account-usage/query_history
* 過去365日間(1年間)以内のSnowflakeクエリ履歴を取得する
【2】得られる情報
* 以下を参照。
https://docs.snowflake.com/ja/sql-reference/account-usage/query_history#columns
主なパラメータ
Column Names | Explanations | Memo |
---|---|---|
DATABASE_NAME/SCHEMA_NAME | DB名/スキーマ名 | |
WAREHOUSE_NAME | ウェアハウス名 | |
QUERY_TEXT | 実行したSQL文 | LIKEで絞るといい感じ |
START_TIME | 開始日時 | |
END_TIME | 終了日時 | |
TOTAL_ELAPSED_TIME | 経過時間(ミリ秒単位) | 長時間かかっているSQL文を選査できる |
EXECUTION_TIME | 実行時間(ミリ秒単位) | |
ROWS_INSERTED/UPDATED/DELETED etc | クエリによって挿入/更新/削除された行の数 |
【3】使用上の注意
https://docs.snowflake.com/ja/sql-reference/account-usage/query_history#usage-notes
* ビューの遅延は最大45分
【4】サンプル
1)トラブルシュートのためのクエリ実行一覧表示
SELECT CONVERT_TIMEZONE('America/Los_Angeles', 'Asia/Tokyo', START_TIME) AS ST, CONVERT_TIMEZONE('America/Los_Angeles', 'Asia/Tokyo', END_TIME) AS ET, * FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY WHERE USER_NAME = 'your_user' AND ROLE_NAME = 'your_role' AND START_TIME >= '2024-10-08 05:00:00+00:00' AND QUERY_TEXT LIKE '%your_table%' ORDER BY START_TIME DESC LIMIT 100 ;
2)クエリ実行一覧から何件更新されたかを表示
SELECT MIN(CONVERT_TIMEZONE('America/Los_Angeles', 'Asia/Tokyo', START_TIME)) AS ST, MAX(CONVERT_TIMEZONE('America/Los_Angeles', 'Asia/Tokyo', END_TIME)) AS ET, SUM(ROW_INSERTED) FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY WHERE USER_NAME = 'your_user' AND ROLE_NAME = 'your_role' AND START_TIME >= '2024-10-08 05:00:00+00:00' AND QUERY_TEXT LIKE '%your_table%' GROUP BY ALL ORDER BY START_TIME DESC ;
関連記事
Snowflake ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2021/11/02/130111
Snowflake ~ 入門編 / Hello world ~
https://dk521123.hatenablog.com/entry/2021/11/22/212520
Snowflake ~ 統計情報 ~
https://dk521123.hatenablog.com/entry/2023/08/03/000817
Snowflake ~ TAG ~
https://dk521123.hatenablog.com/entry/2023/08/08/172648
Snowflake ~ ストレージ統合 ~
https://dk521123.hatenablog.com/entry/2022/06/29/221037
Snowflake ~ ストレージ統合の作成手順 ~
https://dk521123.hatenablog.com/entry/2023/07/27/000000
Snowflake ~ 日時関連 ~
https://dk521123.hatenablog.com/entry/2022/06/17/113003
Snowflake ~ 日時関連 / 日時取得関数 ~
https://dk521123.hatenablog.com/entry/2022/09/02/092144
Snowflake ~ Timezone ~
https://dk521123.hatenablog.com/entry/2024/10/10/002436