自動テーブル最適化の有効化、無効化、モニタリング - Amazon Redshift

自動テーブル最適化の有効化、無効化、モニタリング

デフォルトでは、ソートキーまたはディストリビューションキーを明示的に定義せずに作成されたテーブルは AUTO に設定されています。テーブルの作成時に、ソートキーまたはディストリビューションキーを手動で明示的に設定することもできます。ソートキーまたはディストリビューションキーを設定した場合、テーブルは自動的に管理されません。

自動テーブル最適化の有効化

既存のテーブルを自動的に最適化できるようにするには、ALTER ステートメントオプションを使用して、テーブルを AUTO に変更します。ソートキーには自動化を定義できますが、ディストリビューションキーには自動化を定義することができません (逆も同様)。ALTER ステートメントを実行してテーブルを自動テーブルに変換する場合、既存のソートキーとディストリビューションスタイルは保持されます。

ALTER TABLE table_name ALTER SORTKEY AUTO;
ALTER TABLE table_name ALTER DISTSTYLE AUTO;

詳細については、「ALTER TABLE」を参照してください。

最初は、テーブルにはディストリビューションキーまたはソートキーがありません。ディストリビューションスタイルは、テーブルのサイズに応じて EVEN または ALL のいずれかに設定されます。テーブルのサイズが大きくなるにつれて、Amazon Redshift は最適なディストリビューションキーとソートキーを適用します。最適化は、最小数のクエリが実行されてから数時間以内に適用されます。ソートキーの最適化を決定するとき、Amazon Redshift はテーブルスキャン中にディスクから読み込んだデータブロックを最適化しようとします。ディストリビューションスタイルの最適化を決定するとき、Amazon Redshift はクラスターノード間で転送されるバイト数を最適化しようとします。

テーブルからの自動テーブル最適化の削除

自動最適化からテーブルを削除できます。オートメーションからテーブルを削除するには、ソートキーまたはディストリビューションスタイルを選択します。ディストリビューションスタイルを変更するには、特定のディストリビューションスタイルを指定します。

ALTER TABLE table_name ALTER DISTSTYLE EVEN;
ALTER TABLE table_name ALTER DISTSTYLE ALL;
ALTER TABLE table_name ALTER DISTSTYLE KEY DISTKEY c1;

ソートキーを変更するには、ソートキーを定義するか、[none (なし)] を選択します。

ALTER TABLE table_name ALTER SORTKEY(c1, c2);
ALTER TABLE table_name ALTER SORTKEY NONE;

自動テーブル最適化のモニタリング

システムビュー SVV_ALTER_TABLE_RECOMMENDATIONS は、テーブルに対する現在の Amazon Redshift Advisor のレコメンデーションを記録します。このビューには、自動最適化用に定義されているテーブルと定義されていないテーブルのすべてのレコメンデーションが表示されます。

テーブルが自動最適化用に定義されているかどうかを表示するには、システムビュー SVV_TABLE_INFO にクエリを実行します。エントリは、現在のセッションのデータベースに表示されているテーブルに対してのみ表示されます。レコメンデーションは、クラスターの作成時刻から数時間以内に開始され、1 日に 2 回ビューに挿入されます。レコメンデーションが利用可能になると、1 時間以内に開始されます。(Amazon Redshift またはユーザーのいずれかによって) レコメンデーションが適用されると、ビューに表示されなくなります。

システムビュー SVL_AUTO_WORKER_ACTION には、Amazon Redshift によって実行されたすべてのアクションに関する監査ログとテーブルの以前の状態が表示されます。

システムビュー SVV_TABLE_INFO には、システム内のすべてのテーブルが、テーブルのソートキーとディストリビューションスタイルが AUTO に設定されているかどうかを示す列とともに一覧表示されます。

これらのシステムビューの詳細については、システムモニタリング (プロビジョニングのみ) を参照してください。