SVV_INTERLEAVED_COLUMNS
インターリーブソートキーを使用するテーブルで、VACUUM REINDEX を使用してインデックスを再作成するかどうか決定するために、SVV_INTERLEAVED_COLUMNS ビューを使用します。VACUUM の実行頻度および VACUUM REINDEX の実行時期についての詳細は、「バキューム処理時間の最小化」を参照してください。
SVV_INTERLEAVED_COLUMNS はスーパーユーザーのみに表示されます。詳細については、「システムテーブルとビューのデータの可視性」を参照してください。
テーブルの列
列名 | データ型 | 説明 |
---|---|---|
tbl | integer | テーブル ID。 |
col | integer | 列のゼロベースインデックス。 |
interleaved_skew | numeric(19,2) | テーブルのインターリーブソートキー列にある分散の量を示す比率。値 1.00 は分散がないことを示し、それ以上の値は、値が大きくなるほど大きな分散があることを示します。大きな分散のあるテーブルでは、VACUUM REINDEX コマンドでインデックスを再作成する必要があります。 |
last_reindex | timestamp | 指定されたテーブルに対して VACUUM REINDEX が実行された最終日時。テーブルのインデックスが一度も再作成されていない場合、または基礎となるシステムログテーブル STL_VACUUM が最後のインデックス再作成以降にローテーションされている場合、この値は NULL です。 |
サンプルクエリ
インデックスの再作成が必要となる可能性があるテーブルを識別するには、以下のクエリを実行します。
select tbl as tbl_id, stv_tbl_perm.name as table_name, col, interleaved_skew, last_reindex from svv_interleaved_columns, stv_tbl_perm where svv_interleaved_columns.tbl = stv_tbl_perm.id and interleaved_skew is not null; tbl_id | table_name | col | interleaved_skew | last_reindex --------+------------+-----+------------------+-------------------- 100068 | lineorder | 0 | 3.65 | 2015-04-22 22:05:45 100068 | lineorder | 1 | 2.65 | 2015-04-22 22:05:45 100072 | customer | 0 | 1.65 | 2015-04-22 22:05:45 100072 | lineorder | 1 | 1.00 | 2015-04-22 22:05:45 (4 rows)