冗長な計算を削減し、効率を向上させるために、MaxCompute のインテリジェントなマテリアライズドビュー機能は、ワークロードを分析し、マテリアライズドビューをレコメンデーションすることで、コンピューティングを高速化します。
制限事項
インテリジェント分析とレコメンデーションは、単一のプロジェクト内でのみサポートされています。プロジェクト間の分析はサポートされていません。
より正確なマテリアライズドビューのレコメンデーションを生成するには、機能を有効にした後、以下の条件を満たす必要があります。その後、[マテリアライズドビューのレコメンデーション] ページでレコメンデーションを表示できます。
サイクルタスクが3日以上連続して実行されている必要があります。
パブリックサブクエリの入力データ量が1,000,000行を超える必要があります。
パブリックサブクエリには、ジョインや集約などのデータ再構築演算子が含まれている必要があります。
この機能は、以下のリージョンでのみ利用可能です:中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (深セン)、中国 (成都)、ドイツ (フランクフルト)。
操作手順
マテリアライズドビューのレコメンデーションの表示
[Materialized View Recommendations] タブでは、現在のリージョン内のすべてのプロジェクトまたは指定されたプロジェクトについて、ジョブへの潜在的な影響とレコメンデーションの詳細を表示できます。
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側のナビゲーションウィンドウで、を選択します。
[Intelligent Materialized Views] ページで、[マテリアライズドビューの推奨事項] タブをクリックします。
以下のフィルターパラメーターを使用して、マテリアライズドビューのレコメンデーションを検索します。
パラメーター
説明
プロジェクト名
ドロップダウンリストから MaxCompute プロジェクトを選択します。
ソーステーブル名
1 つ以上のテーブル名を、コンマ (
,) で区切って入力します。あいまい検索に対応しています。分析時間間隔
パブリックサブクエリをフィルターするための日付範囲を選択します。
レコメンデーションされたマテリアライズドビューについて、以下の情報を表示できます。
影響メトリック:
メトリック
説明
1日あたりの恩恵を受けるジョブの推定数
レコメンデーションされたマテリアライズドビューが作成された場合に恩恵を受ける1日あたりのジョブの推定数。
恩恵を受けるジョブの1日あたりの現在のCU時間消費量と割合
レコメンデーションされたマテリアライズドビューが作成された後の、恩恵を受けるジョブの1日あたりの推定CU時間消費量と、すべてのジョブの1日あたりのCU時間消費量に対するその割合。割合が高いほど、影響が大きいことを示します。
恩恵を受けるジョブの1日あたりの現在のコンピューティングリソース消費量と割合
レコメンデーションされたマテリアライズドビューが作成された後の、恩恵を受けるジョブによって消費される1日あたりのコンピューティングリソース (スキャンされたデータ量 × 複雑度) の、すべてのジョブによって消費される1日あたりのコンピューティングリソースに対する推定割合。割合が高いほど、影響が大きいことを示します。
すべてのマテリアライズドビューを作成するために必要な推定コンピューティングリソース
この値 (スキャンされたデータ量 × 複雑度) は、作成コストを推定します。マテリアライズドビューの作成にはリソースが消費され、従量課金モデルを使用している場合はコンピューティングコストが発生します。
パブリックサブクエリのリスト。以下の表に列を説明します。
列
説明
マテリアライズドビューの概要
パブリックサブクエリの概要。
集約は、推奨されるパブリックサブクエリに集約操作が含まれているかどうかを示します。
[入力] には、パブリックサブクエリで使用されるすべてのソーステーブル名がリストされます。
「まとめ」をクリックすると、パブリックサブクエリの詳細 パネルが開き、パブリック サブクエリを繰り返し使用するタスクおよび SQL スクリプトを表示できます。このパネルには、以下の情報が含まれます:
パブリックサブクエリ番号: マテリアライズドビューに関連付けるために、バックエンドによって自動的に生成される一意のIDです。
パブリックサブクエリ: パブリック サブクエリの SQL スクリプトです。
アイコンをクリックすると、SQL スクリプトを展開したり、全画面で表示したりできます。
アイコンをクリックすると、SQL スクリプトをコピーできます。
アイコンをクリックすると、SQL スクリプトをダウンロードできます。
元の SQL リスト:このサブクエリを使用した過去5日間のジョブインスタンスをリストし、以下の詳細が含まれます。
[インスタンス ID]: このサブクエリを実行した元のジョブのインスタンス ID です。
タスクプロジェクト名の送信:ジョブインスタンスが実行されたプロジェクトの名前です。
送信済み:このタスクを提出したユーザーです。
実行時間 (s): サブクエリの実行時間(秒単位)です。
元のクエリsql: 以下の操作を実行できます。
詳細を表示:クリックすると SQL の詳細が表示されます。
ダウンロード:クリックすると SQL スクリプトがダウンロードされます。
プロジェクト
パブリックサブクエリを含むジョブが実行されたプロジェクト。
レコメンデーション評価
1〜5つ星の評価。評価が高いほど、マテリアライズドビューを作成することを強く推奨します。
恩恵を受けるジョブ数
このパブリックサブクエリを使用するジョブの数。
スキャンされたデータ量
現在のパブリックサブクエリによってスキャンされたデータ量。
複雑度
現在のパブリックサブクエリの複雑度。
マテリアライズドビュー作成に必要なコンピューティングリソース
マテリアライズドビューを作成するために必要なコンピューティングリソース。この値は、以下の数式を使用して計算されます:スキャンされたデータ量 × 複雑度。
分析時間
現在のパブリックサブクエリのレコメンデーションが生成された時間。
含まれる操作
接続操作を含む: SQL スクリプトには複数テーブルの結合が含まれます。
集約操作が含まれています: SQL スクリプトには集約操作が含まれています。
これらの操作に基づいてリストをフィルターできます。
作成ステータス
パブリックサブクエリに対してマテリアライズドビューが作成されているかどうかを示します。
操作
ステータスが作成されていませんの場合、新しいマテリアライズドビューをクリックして、作成パネルを開くことができます。
作成ステータスが 作成 であるパブリックサブクエリの場合、マテリアライズドビューの表示 をクリックして、マテリアライズドビューの詳細ページに移動できます。
マテリアライズドビューの作成
「マテリアライズドビューの推奨事項」ページの推奨事項からマテリアライズドビューを作成するには、以下の手順に従います:
操作 列で、新しいマテリアライズドビュー をクリックします。
[Create Materialized View] パネルで、以下のパラメーターを設定します。
パラメーター
説明
マテリアライズドビュー名
デフォルト名は
rec_mv_{$project_name}_{$timestamp}です。要件に基づいて名前をカスタマイズすることを推奨します。名前は英字または数字で始まり、英字、数字、およびアンダースコア (_) のみを含めることができます。リフレッシュタイプ
以下のオプションが利用可能です。
固定間隔更新: マテリアライズドビューのデータを、分、時間、または日の固定間隔で更新します。
時間管理cronモード: 標準の cron 式に基づいて、マテリアライズドビューのデータを更新します。
スクリプト
マテリアライズドビューを作成するためのレコメンデーションされた SQL スクリプト。
アイコンをクリックすると、SQL スクリプトを展開したり、全画面で表示したりできます。
アイコンをクリックすると、SQL スクリプトをコピーできます。
アイコンをクリックすると、SQL スクリプトをダウンロードできます。
[OK] をクリックしてマテリアライズドビューを作成します。
マテリアライズドビューの作成には、ストレージとコンピューティングの両方でコストが発生します。ストレージコストは標準テーブルと同じように計算されます。従量課金モデルを使用している場合、「コンピューティングリソース」の値 (スキャンされたデータ量 × 複雑度) を使用してコンピューティングコストを推定できます。
マテリアライズドビューの管理とメリットの追跡
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
[Intelligent Materialized Views]ページで、[マテリアライズド・ビューの管理と収益]タブをクリックします。
MaxCompute プロジェクトとメリット統計間隔を選択して、作成されたマテリアライズドビューのリストを表示し、そのメリットを追跡および管理します。
メリットメトリック。
メトリック
説明
ヒット数
メリット統計間隔内でマテリアライズドビューがクエリされた回数。
節約されたコンピューティング時間
メリット統計間隔内で、選択したプロジェクトのマテリアライズドビューを使用したジョブによって節約されたコンピューティング時間。
節約されたCU時間
メリット統計間隔内で、選択したプロジェクトのマテリアライズドビューを使用したジョブによって節約されたCU時間。
節約されたコンピューティングリソース
メリット統計間隔内で、選択したプロジェクトのマテリアライズドビューを使用したジョブによって節約されたコンピューティングリソース (スキャンされたデータ量 × 複雑度)。このメトリックには、従量課金コンピューティングリソースで実行されるジョブのみが含まれます。
節約されたコンピューティングコスト (定価)
コスト削減は、節約されたコンピューティングリソースに、従量課金 Standard Edition SQL コンピューティングの単位価格を乗じて計算されます。単位価格は、0.0348 米ドル/GB です。
マテリアライズドビューリスト。
列
説明
マテリアライズドビュー名
マテリアライズドビューの名前。
ヒット数
メリット間隔内 (作成以降または過去1日) でマテリアライズドビューがクエリされた回数。
節約されたコンピューティング時間
メリット統計間隔内で、このマテリアライズドビューを使用したジョブによって節約されたコンピューティング時間。
節約されたCU時間
メリット統計間隔内で、このマテリアライズドビューを使用したジョブによって節約されたCU時間。
節約されたコンピューティングリソース
メリット統計間隔内で、このマテリアライズドビューを使用したジョブによって節約されたコンピューティングリソース (スキャンされたデータ量 × 複雑度)。このメトリックには、従量課金コンピューティングリソースで実行されるジョブのみが含まれます。
作成時間
マテリアライズドビューが作成された時間。
ステータス
マテリアライズドビューのステータス。有効な値は次のとおりです。
作成
作成中
操作
マテリアライズドビューに対して以下の操作を実行できます。
詳細: クリックすると、マテリアライズドビューのプロパティ、クエリ使用量、およびパフォーマンスを表示できます。詳細ページには、以下の情報が含まれます。
マテリアライズドビュー名。
基本情報。
作成時間:マテリアライズドビューが作成された日時。
テーブル構造の更新時間: マテリアライズドビューのテーブルスキーマが最後に更新された時刻です。
ストレージサイズ:マテリアライズドビューが占有するストレージ領域です。
リフレッシュ周波数 (分): マテリアライズドビューがリフレッシュされる頻度です。
更新時間: マテリアライズドビューが最後にリフレッシュされた時刻。
コードの詳細: マテリアライズドビューを定義する SQL スクリプトです。
アイコンをクリックすると、SQL スクリプトを展開したり、全画面で表示したりできます。
アイコンをクリックすると、SQL スクリプトをコピーできます。
アイコンをクリックすると、SQL スクリプトをダウンロードできます。
マテリアライズドビュー呼び出しの詳細: このマテリアライズドビューをクエリしたすべてのタスクの詳細を表示します。
[インスタンス ID]: ジョブのインスタンス ID です。ID をクリックすると、詳細情報を確認できる 求人情報 ページに移動します。
Mv実行時間の呼び出し: このジョブがマテリアライズドビューをクエリした際の実行時間(秒単位)です。
時間を節約: このジョブがマテリアライズドビューを使用することで節約された時間です。
CUを消費するとき: このタスクで消費された CU 時間です。
CUを保存するとき: このジョブがマテリアライズドビューを使用して節約した CU 時間です。
Computing Load: タスクによって消費される計算リソース(スキャンされたデータ量 × 複雑さ)です。
Reduced Computing Load: このジョブがマテリアライズドビューを使用することによって節約したコンピューティングリソース(スキャンされたデータ量 × 複雑さ)です。
マテリアライズドビューの削除: クリックしてマテリアライズドビューを削除します。