STV_QUERY_METRICS - Amazon Redshift

STV_QUERY_METRICS

ユーザー定義のクエリキュー (サービスクラス) でアクティブに実行されているクエリについて、処理される列数、CPU 使用率、入出力、ディスク使用率などのメトリクス情報を含みます。完了したクエリのメトリクスを確認するには、STL_QUERY_METRICS システムテーブルを表示します。

クエリメトリクスは、1 秒間隔でサンプリングされます。結果として、同じクエリが複数実行され、わずかに異なる時刻を返す場合があります。また、1 秒未満で実行されるクエリセグメントは記録されない場合があります。

STV_QUERY_METRICS は、クエリレベル、セグメントレベル、およびステップレベルでメトリクスを追跡および集計します。クエリセグメントとステップの詳細については、「クエリプランと実行ワークフロー」を参照してください。多くのメトリクス (max_rowscpu_timeなど) は、ノードスライスを超えて合計されます。ノードスライスの詳細については、「データウェアハウスシステムのアーキテクチャ」を参照してください。

列がメトリクスをレポートするレベルを確認するには、segment 列および step_type 列を調べます。

  • segmentstep_type の両方が -1 である場合、列はクエリレベルでメトリクスをレポートします。

  • segment-1 でなく、step_type-1 である場合、列はメトリクスをセグメントレベルでレポートします。

  • segmentstep_type の両方が -1 でない場合、列はステップレベルでメトリクスをレポートします。

STV_QUERY_METRICS はすべてのユーザーに表示されます。スーパーユーザーはすべての行を表示できますが、通常のユーザーは自分のデータのみを表示できます。詳細については、「システムテーブルとビューのデータの可視性」を参照してください。

このテーブルの一部またはすべてのデータは、SYS モニタリングビュー SYS_QUERY_DETAIL でも確認できます。SYS モニタリングビューのデータは、使いやすく理解しやすいようにフォーマットされます。クエリには、SYS モニタリングビューを使用することをお勧めします。

テーブルの列

列名 データ型 説明
userid integer エントリを生成したクエリを実行したユーザーの ID。
service_class integer WLM クエリキュー (サービスクラス) の ID。クエリキューは WLM 設定で定義されます。メトリクスはユーザー定義のキューについてのみレポートされます。
query integer クエリ ID。クエリ列は、他の各種システムテーブルおよびビューを結合するために使用できます。
starttime timestamp UTC で表されたクエリの実行開始時刻。秒の小数部の精度 (6 桁) を使用します。例: 2009-06-12 11:29:19.131358
スライス integer クラスターのスライスの数。
segment integer セグメント番号。複数のセグメントから構成された 1 つのクエリ。各セグメントは 1 つ以上のステップから構成されます。複数のクエリセグメントを同時に実行できます。各セグメントは 1 つのプロセスで実行されます。セグメント値が -1 である場合は、メトリクスセグメントの値はクエリレベルまでロールアップされます。
step_type integer 実行されたステップのタイプ。ステップタイプの説明については、「ステップタイプ」を参照してください。
rows bigint ステップに処理された行数。
max_rows bigint ステップの列出力の最大数 (すべてのスライスにわたる集計値)。
cpu_time bigint CPU の使用時間 (ミリ秒)。セグメントレベルでは、すべてのスライスにわたるセグメントの CPU 時間の合計。クエリレベルでは、すべてのスライスとセグメントにわたるクエリの CPU 時間の合計。
max_cpu_time bigint CPU の最長使用時間 (ミリ秒)。セグメントレベルでは、すべてのスライスにわたるセグメントによる CPU の最長使用時間。クエリレベルでは、任意のクエリセグメントによる CPU の最長使用時間。
blocks_read bigint クエリまたはセグメントに読み取られた 1 MB ブロックの数。
max_blocks_read bigint セグメントに読み取られた 1 MB ブロックの最大数 (すべてのスライスにわたる集計値)。セグメントレベルでは、すべてのスライスにわたるセグメントによって読み取られた 1 MB ブロックの最大数。クエリレベルでは、任意のクエリセグメントによって読み取られた 1 MB ブロックの最大数。
run_time bigint

すべてのスライスにわたって集計された合計実行時間。実行時間に待機時間は含まれません。

セグメントレベルでは、すべてのスライスにわたって合計されたセグメントの実行時間。クエリレベルでは、全てのスライスとセグメントにわたって合計されたクエリの実行時間。合計値であるため、実行時間はクエリの実行時間とは関連しません。

max_run_time bigint セグメントの最長経過時間 (ミリ秒) セグメントレベルでは、すべてのスライスにわたるセグメントの最長実行時間。クエリレベルでは、任意のクエリセグメントの最長実行時間。
max_blocks_to_disk bigint 中間結果の書き込みに使用する最大ディスク容量 (1 MB ブロック)。セグメントレベルでは、全てのスライスにわたるセグメントによって使用された最大ディスク容量。クエリレベルでは、任意のクエリセグメントによって使用された最大ディスク容量。
blocks_to_disk bigint クエリまたはセグメントが中間結果の書き込みに使用するディスク容量 (1 MB ブロック)。
step integer 実行されたクエリステップ。
max_query_scan_size bigint クエリによってスキャンされた最大データサイズ (MB)。セグメントレベルでは、すべてのスライスにわたるセグメントによってスキャンされたデータの最大サイズ。クエリレベルでは、任意のクエリセグメントによってスキャンされたデータの最大サイズ。
query_scan_size bigint クエリによってスキャンされたデータサイズ (MB)。
query_priority integer クエリの優先度です。有効な値は、-10123、および 4 です。ここで、-1 は、クエリ優先度がサポートされていないことを意味します。
query_queue_time bigint クエリがキューに入れられた時間(マイクロ秒)。

ステップタイプ

次の表に、データベースユーザーに関連するステップタイプのリストを示します。内部利用のみを目的とするステップタイプは含まれません。ステップタイプが -1 の場合、メトリクスはステップレベルでレポートされません。

ステップタイプ 説明
1 テーブルのスキャン
2 行の挿入
3 行の集計
6 ソートステップ
7 マージステップ
8 分散ステップ
9 ブロードキャスト分散ステップ
10 ハッシュ結合
11 マージ結合
12 保存ステップ
14 ハッシュ
15 ネストされたループ結合
16 フィールドと表現の投影
17 返される行数の制限
18 Unique
20 行の削除
26 返される行のソート数の制限
29 ウィンドウ関数のコンピューティング
32 UDF
33 Unique
37 リーダーノードからクライアントに行を返す
38 コンピュートノードからリーダーノードに行を返す
40 Spectrum スキャン

サンプルクエリ

CPU 時間の長いアクティブなクエリ (1,000 秒以上) を検索するには、次のクエリを実行します。

select query, cpu_time / 1000000 as cpu_seconds from stv_query_metrics where segment = -1 and cpu_time > 1000000000 order by cpu_time; query | cpu_seconds ------+------------ 25775 | 9540

ネストされたループ結合を持ち、100 万以上の行を返したクエリを検索するには、次のクエリを実行します。

select query, rows from stv_query_metrics where step_type = 15 and rows > 1000000 order by rows; query | rows ------+----------- 25775 | 1580225854

60 秒以上実行されていて CPU 時間が 10 秒以下のアクティブなクエリを検索するには、次のクエリを実行します。

select query, run_time/1000000 as run_time_seconds from stv_query_metrics where segment = -1 and run_time > 60000000 and cpu_time < 10000000; query | run_time_seconds ------+----------------- 25775 | 114