このトピックでは、マテリアライズドビューを管理する方法について説明します。
マテリアライズド・ビューの定義を表示する
必要な権限
マテリアライズドビューに対するSELECT権限が必要です。
構文
SHOW CREATE MATERIALIZED VIEW <mv_name>
説明
マテリアライズドビューの作成に使用されるDDLステートメントに関する詳細を返します。
マテリアライズド・ビューの照会
必要な権限
マテリアライズドビューに対するSELECT権限が必要です。
構文
ショー素材化されたビュー ['pattern' のような]
説明
SELECT権限を持つマテリアライズド・ビューのリストを返します。 パターンを指定すると、パターンに一致するすべてのマテリアライズドビューが返されます。
マテリアライズド・ビューの削除
必要な権限
具体化されたビューに対するDROP権限が必要です。
構文
ドロップ素材化ビュー <mv_name>
説明
マテリアライズドビューを削除します。 DROP TABLEステートメントを実行して、マテリアライズドビューを削除することはできません。
マテリアライズドビュー情報テーブル
information_schema.mv_info
このテーブルには、すべてのマテリアライズドビューのメタデータが含まれます。
次の表に、共通フィールドを示します。
フィールド
説明
MV_SCHEMA
マテリアライズドビューが格納されているデータベースの名前。
MV_NAME
マテリアライズド・ビューの名前。
MV_DEFINITION
マテリアライズド・ビューを定義するDDLステートメント。
MV_QUERY
具体化されたビューをクエリするために実行できるSQL文。
FIRST_REFRESH_TIME
自動リフレッシュが設定されている場合の最初のリフレッシュの時刻。
NEXT_REFRESH_TIME_FUNC
自動リフレッシュが設定されている場合、次のリフレッシュ時間を推測する関数。
所有者
具体化されたビューの作成者。
単一のマテリアライズドビューの定義を表示する場合は、SHOW CREATE materialized viewステートメントを実行することをお勧めします。
次の例は、information_schema.mv_infoテーブルを照会する方法を示しています。
# クラスター内のマテリアライズドビューの総数を照会します。 SELECT count(*) FROM information_schema.mv_info
information_schema.mv_auto_refresh_jobs
このテーブルには、具体化されたビューの自動更新レコードが含まれます。 このテーブルには、自動更新が設定されているマテリアライズドビューのみが表示されます。 最大1,024のマテリアライズドビューを表示できます。
次の表に、共通フィールドを示します。
フィールド
説明
MV_SCHEMA
マテリアライズドビューが格納されているデータベースの名前。
MV_NAME
マテリアライズド・ビューの名前。
SCHEDULED_START_TIME
更新のスケジュールされた開始時刻。
START_TIME
リフレッシュの開始時刻。
END_TIME
更新の終了時間。
州
更新のステータス。 有効な値:
PENDING: リフレッシュがトリガーされます。
実行中: 更新は進行中です。 複数のマテリアライズドビューが同時にリフレッシュされる場合、ビューはコンピューティングリソースを待機している可能性があります。
FINISHED: リフレッシュが完了しました。
FAILED: リフレッシュに失敗しました。 リフレッシュが失敗した場合、許可された再試行回数に達するまで再試行されます。 それでもリフレッシュが失敗した場合、リフレッシュタスクはキャンセルされます。
TIMEOUT: リフレッシュがタイムアウトし、不明な状態になります。
次の例は、information_schema.mv_auto_refresh_jobsテーブルを照会する方法を示しています。
# mymvビューの自動更新レコードを照会します。 SELECT * からinformation_schema.mv_auto_refresh_jobs (mv_name = 'mymv')
マテリアライズド・ビューの変更
必要な権限
具体化されたビューに対するALTER権限が必要です。
構文
ALTER MATERIALIZED VIEW <mv_name> [<ENABLE | DISABLE> クエリの書き換え]
説明
<ENABLE | DISABLE> QUERY REWRITE
: マテリアライズドビューのクエリ書き換え機能を有効または無効にします。