メニュー
Amazon Redshift
データベース開発者ガイド (API Version 2012-12-01)

SVV_QUERY_STATE

SVV_QUERY_STATE を使用して、現在実行されているクエリの実行についての情報を表示します。

SVV_QUERY_STATE ビューには STV_EXEC_STATE テーブルのデータのサブセットが含まれます。

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

テーブルの列

列名 データ型 説明
userid integer エントリを生成したユーザーの ID。
query integer クエリ ID。他の各種システムテーブルおよびビューを結合するために使用できます。
seg integer 実行されているクエリセグメントの数です。複数のセグメントから構成された 1 つのクエリ。各セグメントは 1 つ以上のステップから構成されます。複数のクエリセグメントを同時に実行できます。各セグメントは 1 つのプロセスで実行されます。
ステップ integer 実行されているクエリステップの数です。ステップとは、クエリ実行の最小単位です。各ステップはテーブルのスキャン、結果の返却、データのソートなど、作業の個別の単位を表します。
maxtime interval このステップを実行する最大の時間 (マイクロ秒)。
avgtime interval このステップを実行する平均の時間 (マイクロ秒)。
rows bigint 実行中のステップが生成した行の数。
bytes bigint 実行中のステップが生成したバイトの数。
cpu bigint 内部使用を目的とします。
メモリ bigint 内部使用を目的とします。
rate_row double precision クエリが開始されてからの行毎秒率。行を合計し、クエリが開始されてから現在時刻までの秒数で除算することで算出されます。
rate_byte double precision クエリが開始されてからのバイト毎秒率。バイトを合計し、クエリが開始されてから現在時刻までの秒数で除算することで算出されます。
label character(25) クエリラベル: ステップの名前 (scanまたはsortなど)。
is_diskbased character(1) クエリのこのステップがディスクベース演算として実行されたかどうか: true (t) または false (f)。ハッシュ、ソート、集計といった特定のステップのみがディスクベースで実行できます。それ以外のタイプのステップはメモリ内でのみ実行されます。
workmem bigint クエリステップに割り当てられた作業メモリの量 (バイト単位)。
num_parts integer ハッシュテーブルがハッシュステップ中に分割されるパーティションの数。ハッシュテーブル全体がメモリに収まらないと推測された場合、ハッシュテーブルはパーティション分割されます。この列に正の数が入っていても、ハッシュステップがディスクベースの処理として実行されたことを示すものではありません。ハッシュステップがディスクベースであったかどうかを調べるには、IS_DISKBASED 列の値を見てください。
is_rrscan character(1) true (t) の場合は、ステップで範囲限定スキャンが使用されたことを示します。デフォルトは false (f) です。
is_delayed_scan character(1) true (t) の場合は、ステップで遅延スキャンが使用されたことを示します。デフォルトは false (f) です。

サンプルクエリ

クエリの処理時間をステップごとに算出する

次のクエリは、クエリ ID 279 のクエリの各ステップの実行にかかった時間と、Amazon Redshift が処理したデータ行の数を示します。

Copy
select query, seg, step, maxtime, avgtime, rows, label from svv_query_state where query = 279 order by query, seg, step;

このクエリは次のサンプル出力で示されているように、クエリ 279 についての処理情報を取得します。

Copy
query | seg | step | maxtime | avgtime | rows | label ------+---------+------+---------+---------+---------+------------------- 279 | 3 | 0 | 1658054 | 1645711 | 1405360 | scan 279 | 3 | 1 | 1658072 | 1645809 | 0 | project 279 | 3 | 2 | 1658074 | 1645812 | 1405434 | insert 279 | 3 | 3 | 1658080 | 1645816 | 1405437 | distribute 279 | 4 | 0 | 1677443 | 1666189 | 1268431 | scan 279 | 4 | 1 | 1677446 | 1666192 | 1268434 | insert 279 | 4 | 2 | 1677451 | 1666195 | 0 | aggr (7 rows)

ディスクで現在実行中のアクティブなクエリを確認する

次のクエリは、ディスクで現在実行中のアクティブなクエリを示します。

Copy
select query, label, is_diskbased from svv_query_state where is_diskbased = 't';

このサンプル出力は、ディスクで現在実行中のアクティブなクエリを示します。

Copy
query | label | is_diskbased -------+--------------+-------------- 1025 | hash tbl=142 | t (1 row)