すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:自動マテリアライズドビュー (AutoMV)

最終更新日:Jul 10, 2025

MaxCompute は、計算効率を高め、冗長な計算を減らすために、自動マテリアライズドビュー (AutoMV) 機能を提供します。ユーザーのタスク クエリ パターンとパフォーマンスに基づいてマテリアライズドビューを自動的に作成し、ユーザーの計算を効率化します。

機能紹介

データウェアハウジングの分野では、マテリアライズドビューは冗長な計算を最適化するための重要なツールです。ユーザーの操作に、JOIN や AGGREGATE 操作などの時間のかかる高頻度の計算を共通のサブクエリとして共有する多数のクエリ文が含まれるシナリオを考えてみましょう。マテリアライズドビューを使用すると、これらのサブクエリの結果を専用のテーブルに格納できます。これらの計算が再度必要になった場合、再計算する必要はありません。システムはマテリアライズドビューテーブルに格納されている結果に直接アクセスできるため、処理速度が向上し、計算リソースが節約されます。マテリアライズドビューの詳細については、「マテリアライズドビューの操作」をご参照ください。

MaxCompute は、AutoMV 機能を使用してマテリアライズドビューの分析、作成、およびメンテナンスを簡素化し、ユーザーエクスペリエンスを向上させます。

MaxCompute で AutoMV を有効にすると、システムは自動的に次の処理を実行します。

  1. クエリの継続的な監視: プロジェクトレベルで実行されたクエリを監視し、マテリアライズドビューに適した共通のサブクエリを特定します。

  2. マテリアライズドビューの自動作成: 特定された共通のサブクエリに基づいて、マテリアライズドビューを定期的に生成します。

  3. インテリジェントなクエリの書き換え: 自動的に作成されたマテリアライズドビューテーブルから直接読み取るように、ジョブクエリを自動的に書き換えます。

  4. 適応型ストレージリソース管理: AutoMV の適応型管理と自動クリーニングメカニズムによりストレージリソースを効率的に管理し、ストレージ使用量の著しい増加を防ぎます。

制限事項

  • サポートされているリージョンには、中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (深圳)、中国 (成都) が含まれます。

  • AutoMV を作成するには、共通のサブクエリに Project、Filter、JOIN、Aggregate の演算子の少なくとも 1 つが含まれている必要があります。

  • AutoMV はプロジェクト間の使用をサポートしていません 2 つの MaxCompute プロジェクト (プロジェクト A とプロジェクト B) が同じマテリアライズドビューを使用できる場合、AutoMV は各プロジェクトに対して同じデータを持つ 2 つの個別のマテリアライズドビューを作成します。

  • AutoMV は完全一致のみをサポートします。より広範なクエリがマテリアライズドビューにヒットすることによるパフォーマンスの低下を防ぐため、AutoMV は完全に同等のデータを持つマテリアライズドビューとのみジョブを照合します。

AutoMV スイッチの管理と ストレージリソース制限 の設定

MaxCompute コンソールまたは SQL コマンドを使用して、AutoMV スイッチを管理し、ストレージリソース制限を設定できます。手動で設定した制限を超えると、AutoMV はマテリアライズドビューへのデータの書き込みを停止します。

説明

マテリアライズドビューは、使用されるストレージがシステム定義のストレージしきい値を超えない場合にのみ生成されます。

コンソールを使用した設定

MaxCompute マネージャーコンソール で、次のいずれかの方法を使用して AutoMV スイッチを管理し、ストレージリソース制限を設定します。

  • プロジェクト作成時の設定

    プロジェクトを作成するときに、[自動マテリアライズドビュー (automv)] を有効にし、[プロジェクトの追加] ダイアログボックスで [automv ストレージ制限 (GB)] を設定できます。AutoMV はデフォルトで有効になっています。

  • プロジェクト管理ページでの設定

    MaxCompute [プロジェクト管理] ページに移動し、ターゲットプロジェクトの [操作] 列の [管理] をクリックし、[パラメーター構成] タブの [インテリジェント最適化スイッチ] 領域の [編集] をクリックして設定します。

  • インテリジェントマテリアライズドビューページでの設定

    1. [Intelligent Optimization] > [Intelligent Materialized Views] ページにアクセスし、[マテリアライズドビュー] ページで [自動マテリアライズドビュー (automv)] タブを選択します。

    2. 右側にある [automv スイッチ管理] をクリックして、AutoMV を手動で有効または無効にし、ストレージ制限 (GB) を設定します。

コマンドを使用した設定

  • AutoMV スイッチの管理

    コマンド SETPROJECT odps.sql.enable.auto.mv=true/false; を使用して、プロジェクトレベルで AutoMV スイッチを管理します。ここで、true は AutoMV を有効にし、false は AutoMV を無効にします。

  • ストレージリソース制限の設定

    次のコマンドを使用して、プロジェクトレベルでストレージリソース制限を設定します。たとえば、AutoMV に 1024 GB のストレージ容量を割り当てて、マテリアライズドビューを格納します。

SETPROJECT odps.sql.auto.mv.quota.gb=1024; 
重要
  • AutoMV 機能を利用する前に、AutoMV スイッチを有効にするだけでなく、プロジェクトで マテリアライズドビュースクリプトの書き換え 機能が有効になっていることを確認する必要があります。これには、プロジェクトの構成で SETPROJECT odps.sql.materialized.view.enable.auto.rewriting=true; パラメーターを設定する必要があります。これは通常、プラットフォームでデフォルトで有効になっているため、追加の注意は必要ありません。

  • コンソールまたは SQL コマンドを使用して AutoMV のストレージ制限を設定する場合、値は [0, 2147483647) の範囲内の整数である必要があります。

  • AutoMV の最大ストレージ制限を手動で設定しない場合、システムはデフォルトで、AutoMV によって作成されたすべてのマテリアライズドビューによって使用される合計ストレージを、プロジェクトの使用済みストレージリソースの 2% 以下に制限します。

AutoMV のメリットとストレージ占有量の表示

AutoMV タブでは、AutoMV 機能を有効にした後のストレージ使用量に加えて、節約された計算時間、CU 時間、ボリューム、コストなどのメリットを表示できます。

説明

通常、21:00 より前に AutoMV を有効にした場合、システムは翌日適用し、3 日目にメリットとストレージ使用量を表示できます。21:00 以降に有効にした場合、システムは 3 日目に適用し、4 日目に統計を表示できます。

  1. MaxCompute マネージャーコンソール にログインし、左上隅でリージョンを選択します。

  2. 左側のナビゲーションバーで、[インテリジェント最適化] > [インテリジェントマテリアライズドビュー] を選択します。

  3. [マテリアライズドビュー] ページで、[自動マテリアライズドビュー (automv)] タブを選択し、ターゲット MaxCompute プロジェクト (または選択しない場合はすべてのプロジェクト) とメリット統計間隔を選択して、AutoMV が有効になっているプロジェクトのメリット、ストレージ占有量、および特定の AutoMV リストを表示します。

    • インジケーターパラメーター:

      インジケーター

      説明

      ヒットカウント

      メリット統計間隔内で AutoMV が呼び出された回数。

      節約された計算時間

      メリット統計間隔内で選択したプロジェクトの AutoMV にヒットしたすべてのジョブの節約された計算時間 (AutoMV を作成する前の計算時間と比較)。

      節約された CU 時間

      メリット統計間隔内で選択したプロジェクトの AutoMV にヒットしたすべてのジョブの節約された CU 時間消費量 (AutoMV を作成する前の CU 時間消費量と比較)。

      節約された計算ボリューム

      メリット統計間隔内で選択したプロジェクトの AutoMV にヒットしたすべてのジョブの節約された計算ボリューム (スキャンボリューム × 複雑度) (AutoMV を作成する前の計算ボリューム (スキャンボリューム × 複雑度) と比較)。従量課金制の計算リソースで実行されているジョブのみがカウントされます。

      節約された計算コスト (定価)

      選択したプロジェクトの AutoMV にヒットしたすべてのジョブの節約された計算ボリュームに 0.0438 USD/GB (従量課金制 Standard Edition SQL 計算単価) を掛けた値。

      説明

      SAU (リヤド - パートナーリージョン) リージョンはパートナーによって運営されており、単価は 0.05256 USD/GB です。

      ストレージ占有量

      AutoMV によって占有されているストレージサイズ。

    • AutoMV リストパラメーター:

      列名

      説明

      マテリアライズドビュー名

      AutoMV の名前。

      所属プロジェクト

      AutoMV が配置されているプロジェクト。

      ヒットカウント

      メリット間隔内で AutoMV が呼び出された回数。

      節約された計算時間

      メリット統計間隔内でこの AutoMV にヒットしたジョブの節約された計算時間 (AutoMV を作成する前の計算時間と比較)。

      節約された CU 時間

      メリット統計間隔内でこの AutoMV にヒットしたジョブの節約された CU 時間消費量 (AutoMV を作成する前の CU 時間消費量と比較)。

      節約された計算ボリューム

      メリット統計間隔内でこの AutoMV にヒットしたジョブの節約された計算ボリューム (スキャンボリューム × 複雑度) (AutoMV を作成する前の計算ボリューム (スキャンボリューム × 複雑度) と比較)。従量課金制の計算リソースで実行されているジョブのみがカウントされます。

      ストレージ占有量

      AutoMV によって占有されているストレージサイズ。

      操作

      [詳細の表示] をクリックして、AutoMV の基本情報とコードの詳細を表示できます。

      • 基本情報

        • 作成時間: AutoMV の作成時間。

        • テーブル構造の更新時間: AutoMV のテーブル構造の更新時間。

        • ストレージサイズ: AutoMV によって占有されているストレージサイズ。

      • コードの詳細: AutoMV を定義する SQL スクリプト。SQL スクリプトを表示、コピー、またはダウンロードできます。

課金に関する説明

プロジェクトの AutoMV を有効にした後、ユーザーはシステムが自動的に生成する マテリアライズドビューストレージ の料金のみを標準ストレージ単価で支払う必要があります。追加のサービス料金はありません。標準ストレージの料金については、「ストレージ料金」をご参照ください。

説明

マテリアライズドビューは、占有されているストレージがシステム定義の使用可能なストレージしきい値を下回っている場合にのみ生成されます。ストレージリソース制限の設定手順については、「AutoMV スイッチの管理とストレージリソース制限の設定」をご参照ください。

参考資料