- カテゴリ:
ALTER MATERIALIZED VIEW¶
現在のスキーマまたは指定されたスキーマのマテリアライズドビューを変更します。サポートされるアクションは次のとおりです。
マテリアライズドビューの名前変更。
マテリアライズドビューの使用とメンテナンスの中断と再開。
マテリアライズドビューのクラスタリング。
マテリアライズドビューの再クラスタリングの一時停止と再開。
マテリアライズドビューのクラスタリングのドロップ。
詳細については、 マテリアライズドビューの使用 をご参照ください。
- こちらもご参照ください。
CREATE MATERIALIZED VIEW、 DROP MATERIALIZED VIEW、 SHOW MATERIALIZED VIEWS、 DESCRIBE MATERIALIZED VIEW
構文¶
ALTER MATERIALIZED VIEW <name>
{
RENAME TO <new_name> |
CLUSTER BY ( <expr1> [, <expr2> ... ] ) |
DROP CLUSTERING KEY |
SUSPEND RECLUSTER |
RESUME RECLUSTER |
SUSPEND |
RESUME |
SET {
[ SECURE ]
[ COMMENT = '<comment>' ]
}
SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
UNSET TAG <tag_name> [ , <tag_name> ... ]
UNSET {
SECURE |
COMMENT
}
パラメーター¶
名前
変更するマテリアライズドビューの識別子を指定します。
RENAME TO 新しい名前
このオプションを使用すると、マテリアライズドビューの名前を変更できます。
新しい識別子は、ビューが作成されるスキーマに対して一意である必要があります。新しい識別子はアルファベットで始める必要があり、識別子文字列全体が二重引用符で囲まれていない限り、スペースや特殊文字を含めることはできません(例:
"My object"
)。二重引用符で囲まれた識別子も大文字と小文字が区別されます。詳細については、 識別子の要件 をご参照ください。マテリアライズドビューの名前を変更しても、そのビューへの参照は更新されないことに注意してください。例えば、マテリアライズドビューの上に
V1
という名前のビューを作成し、マテリアライズドビューの名前を変更すると、ビューV1
の定義は古くなります。CLUSTER BY 式#
このコマンドは、マテリアライズドビューをクラスター化します。クラスタリングは、マテリアライズドビューの行を並べ替えて、クラスタリングキー式に基づいてフィルター処理するクエリのパフォーマンスを向上させます。
式#
は、マテリアライズドビューをクラスター化する式を指定します。通常、各式はマテリアライズドビューの列の名前です。マテリアライズドビューのクラスタリングの詳細については、 マテリアライズドビューとクラスタリング をご参照ください。一般的なクラスタリングの詳細については、 データクラスタリングとは をご参照ください。
DROP CLUSTERING KEY
このコマンドは、マテリアライズドビューのクラスタリングをドロップします。
SUSPEND RECLUSTER
オプションは、マテリアライズドビューの再クラスタリングを一時停止します。マテリアライズドビューのクラスタリングの詳細については、 マテリアライズドビューとクラスタリング をご参照ください。RESUME RECLUSTER
RESUME RECLUSTER
オプションは、マテリアライズドビューの再クラスタリングを再開します。SUSPEND
SUSPEND
オプションは、マテリアライズドビューのメンテナンス(更新)と使用を一時停止します。ビューが中断されている間、ベーステーブルへの更新はマテリアライズドビューに反映されません。マテリアライズドビュー自体にもアクセスできません。使用を試みると、次のようなエラーメッセージが表示されます。SQL コンパイルエラー:ビュー「MV1」の展開中のエラー: SQL コンパイルエラー:マテリアライズドビュー MV1 は無効です。
クラスター化されたマテリアライズドビューを中断すると、そのビューの再クラスタリングが暗黙的に中断されます。
RESUME
RESUME
オプションを使用すると、マテリアライズドビューの使用を再開できます。また、マテリアライズドビューのメンテナンスを再開します。ビューがクラスター化されている場合、そのビューの再クラスタリングも暗黙的に再開されます。SET ...
マテリアライズドビューに設定するプロパティを指定します。
SECURE
このオプションは、ビューをセキュアビューに変換します。セキュアビューの詳細については、 セキュアビューの使用 をご参照ください。
TAG タグ名 = 'タグ値' [ , タグ名 = 'タグ値' , ... ]
タグ 名(つまり、キー)とタグ値を指定します。
タグ値は常に文字列であり、タグ値の最大文字数は256です。オブジェクトに設定できる 一意の タグキーの最大数は20です。
注釈
テーブルまたはビューとその列の場合、設定できる一意のタグキーの総数は20です。
たとえば、テーブル内にある単一列の1列に10個の一意のタグキーが設定されている場合、Snowflakeでは、その列、テーブル内にある他の列、テーブル自体、またはテーブルとその列をいくつか組み合わせたものに10個の一意のタグキーを追加で設定できます。一意のタグキーが20の制限に達すると、テーブルまたはその列に追加のタグキーを設定できなくなります。
COMMENT = '文字列リテラル'
このオプションは、マテリアライズドビューのコメントを設定します。コメントは、ビューの動作には影響しませんが、ビューを使用または管理する人々に有用な情報を提供できます。
UNSET ...
マテリアライズドビューの設定を解除するプロパティを指定します。
SECURE
TAG タグ名 [ , タグ名 ... ]
COMMENT
使用上の注意¶
マテリアライズドビューをマネージドアクセススキーマに(ALTER MATERIALIZED VIEW ... RENAME TO 構文を使用して)移動することは、マテリアライズドビューの所有者(つまり、マテリアライズドの OWNERSHIP 権限を持つロール)がターゲットスキーマも所有して いない限り 禁止されています。
メタデータについて。
注意
Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。
例¶
マテリアライズドビューの名前を変更します。
ALTER MATERIALIZED VIEW table1_MV RENAME TO my_mv;
マテリアライズドビューをクラスター化します。
ALTER MATERIALIZED VIEW my_mv CLUSTER BY(i);
マテリアライズドビューのクラスタリングを一時停止しますが、ビューの使用は一時停止されません:
ALTER MATERIALIZED VIEW my_mv SUSPEND RECLUSTER;
マテリアライズドビューのクラスタリングを再開します。
ALTER MATERIALIZED VIEW my_mv RESUME RECLUSTER;
指定されたマテリアライズドビューのすべての使用と自動メンテナンスを中断します。
ALTER MATERIALIZED VIEW my_mv SUSPEND;
指定されたマテリアライズドビューのすべての使用と自動メンテナンスを再開します。
ALTER MATERIALIZED VIEW my_mv RESUME;
マテリアライズドビューのクラスタリングを停止します。
ALTER MATERIALIZED VIEW my_mv DROP CLUSTERING KEY;
ビューをセキュアビューに変更します。
ALTER MATERIALIZED VIEW mv1 SET SECURE;
マテリアライズドビューのコメントを追加または置換します。
ALTER MATERIALIZED VIEW mv1 SET COMMENT = 'Sample view';