このトピックでは、MaxCompute Query Accelerator 2.0(MaxQA)機能を紹介し、システムアーキテクチャ、アプリケーションシナリオ、制限、および使用方法を理解するのに役立ちます。
バージョンガイド
MaxQA 機能はパブリックプレビュー中です。 パブリックプレビューに参加するには、[チケットを送信する] をクリックしてアクティベーションをリクエストしてください。 また、公式の MaxQA ユーザーサポート DingTalk グループ(番号:87535025714)に参加してください。MaxCompute 技術チームが関連する質問への対応を支援します。 パブリックプレビューと特定の機能の詳細については、「Query Acceleration MaxQA 操作ガイド」をご参照ください。
機能の説明
リアルタイムおよびニアリアルタイムのデータ分析要件の継続的な増加に伴い、クエリ応答時間は、最新のデータ分析およびビジネスアプリケーションにおいてますます重要になっています。 MaxQA(MaxCompute Query Accelerator 2.0、旧称 MCQA2.0)は、これらのニーズにより良く対応するために Alibaba Cloud MaxCompute によって開始されたクエリ高速化ソリューションです。専用のクエリ高速化リソースプールに基づいて、制御パス、クエリ オプティマイザー、実行エンジン、ストレージエンジン、キャッシュ機構など、複数の側面で包括的に最適化されており、クエリ応答時間を大幅に短縮します。ビジネスインテリジェンス(BI)、インタラクティブ分析、ニアリアルタイム データウェアハウスなど、低遅延で安定した遅延が要求されるシナリオに特に適しています。
MaxCompute MaxQA(旧称 MCQA2.0)機能は、次の機能を提供します。
小規模から中規模のデータクエリ ジョブおよびデータ挿入 ジョブ(TB スケール内)の高速化最適化をサポートし、最速の実行時間はサブ秒レベルです。
ユーザー定義関数(UDF)、Delta Table、Delta Live MV 増分マテリアライズドビュー機能などを含む、MaxCompute SQL 機能と完全に互換性があります。
テナント専用のサービスを提供し、高い安定性を確保する、分離されたクエリ高速化リソースプールをサポートします。
クエリ高速化リソースプールとバッチ処理リソースプールのカスタマイズされた時分割リソース割り当てルールと、インタラクティブクォータグループとバッチ処理クォータグループの自動スケーリングをサポートし、全体的なリソース使用率を向上させます。
ジョブが複数の実行ステージから中間結果と最終結果を自動的にキャッシュする、エンドツーエンドのキャッシュを備えています。 後続のジョブは、任意のステージでこのキャッシュにヒットできるため、クエリの実行が大幅に高速化されます。
複数の BI ツール(FineBI、Tableau、QuickBI)をサポートします。
サービスアーキテクチャ
MaxQA の主要な技術的利点には、インテリジェントな動的に分離されたリソースプール、エンドツーエンドのキャッシュ機構、ローカライズされた I/O、遅延に最適化された実行計画(QueryPlan)、およびクエリ効率を向上させるためのより効率的な実行エンジンが含まれます。
インテリジェントな動的に分離されたリソースプール:各 MaxQA インスタンスは完全に分離されたコンピューティング環境です。 テナントは複数のインスタンス(複数のインタラクティブクォータグループに対応)を作成できるため、マルチテナント環境で一般的な干渉の問題を回避し、安定したクエリ遅延を確保できます。
エンドツーエンドのキャッシュ機構:ジョブによってスキャンされたテーブルとメタデータ、生成された実行計画、実行中の複数ステージの中間結果、およびクエリ結果はすべて自動的にキャッシュされます。 後続のジョブは、プロセス全体の複数のステージでキャッシュにヒットする可能性があり、実行速度が向上します。 インスタンスレベルの分離されたコンピューティング環境であるため、キャッシュの有効期間は長く、他のインスタンスからのジョブの影響を受けません。
ローカライズされた I/O:ソーステーブルの読み取り中にシャッフルやスピルなどの操作からの I/O データのローカルストレージデバイスへの保持を最大化し、外部システムへの依存を減らし、遅延の安定性を向上させます。
遅延に最適化された実行計画:物理実行計画の選択、同時実行計算、圧縮アルゴリズムの選択など、複数の次元で遅延を優先します。
簡素化された制御パス:フロントエンドはコーディネーターに直接接続し、最適化された制御パスアーキテクチャと非同期変換により、インタラクション効率が向上します。
MaxQA の技術アーキテクチャを次の図に示します。

シナリオ
MaxQA 機能は、日次運用レポートから高度なデータ分析まで、さまざまなアプリケーションシナリオを網羅しており、特にクエリ応答時間と安定性に対する要件が高いビジネスシナリオに適しています。 短期的な意思決定支援であっても、長期的な戦略計画であっても、MaxQA は企業に強力な技術サポートを提供し、データ主導の価値創造能力を強化します。
シナリオ | 説明 | 特徴 | 例 |
アドホッククエリ | 実際のニーズに基づいてクエリ条件を柔軟に選択し、クエリ結果を迅速に取得し、クエリロジックを調整します。 これは、使い慣れたクライアントツールを使用してクエリ分析を実行したいデータ開発者またはデータアナリストに適しています。 | • 数秒または数十秒以内のクエリ遅延要件。 • ユーザーは通常、SQL スキルを持つデータ開発者またはアナリストです。 • クエリ条件の柔軟な選択、変化するビジネス要件への迅速な対応。 | • 探索的データ分析を実行するデータサイエンティスト。 • ETL プロセスで一時的なクエリをデバッグするデータエンジニア。 |
ビジネスインテリジェンス(BI) | MaxCompute を使用してエンタープライズレベルのデータウェアハウスを構築し、ETL を介してデータをビジネスで使用できる集計データに処理します。 MaxQA の低遅延、リソースの分離、弾力的な同時実行性、データキャッシュなどの機能を活用して、マルチコンカレント、高速応答レポート生成、統計分析、固定レポート分析の要件を満たします。 | • クエリデータオブジェクトは通常、集計結果データです。 • 小規模データ、多次元クエリ、固定クエリ、高頻度クエリのシナリオに適しています。 • 高いクエリ遅延要件、秒レベルの戻り値(たとえば、ほとんどのクエリは 5 秒を超えません)。 | • 日次売上レポートの生成。 • 主要なビジネス指標のリアルタイム監視。 • 財務諸表の定期的な生成。 |
インタラクティブデータ分析 | セルフサービス BI ツールとインタラクティブデータ探索プラットフォームにより、技術者以外のユーザーでも複雑なデータ分析を簡単に実行できます。 これらのツールは通常、一連の短いクエリを通じて動的フィルタリング、ソート、集計などの機能を実装し、柔軟で直感的な操作エクスペリエンスを提供します。 | • 複雑な SQL 文を記述する必要なく、ドラッグアンドドロップ操作をサポートします。 • クエリ結果のフィードバックを迅速に提供し、ユーザーが分析プロセスを反復できるようにします。 • 初心者からエキスパートまで、さまざまなレベルのデータアナリストに適しています。 | • Tableau または Fine BI を使用した可視化分析。 • オンラインデータ分析プラットフォームでのデータ探索。 |
大量データの詳細クエリと分析 | MaxQA はクエリ ジョブの特性を自動的に識別し、小規模 ジョブに迅速に応答して処理し、大規模 ジョブのリソース要件を自動的に一致させることができ、アナリストがさまざまな規模と複雑さのクエリを分析するというニーズを満たします。 | • 探索する既存データの量は多いですが、実際に必要な有効データの量は多くありません。 • クエリ遅延要件は中程度で、即時性とバッチ処理の間です。 • ユーザーは通常、詳細データからビジネスパターンを探索し、ビジネスチャンスを発見し、ビジネス仮説を検証する必要があるビジネスアナリストです。 | • ユーザー行動パス解析。 • 顧客セグメンテーションとプロファイル構築。 • 製品使用パターンのマイニング。 |
制限
MaxQA では DDL/DML/DQL 文のみを実行できます(権限操作文、Tunnel 関連文、リソースのアップロード/ダウンロードなど)。
MaxQA はユーザー定義関数(UDF)をサポートしています。 セキュリティを確保するために、各 UDF は分離された環境で起動されます。 パフォーマンスの大幅な変動を防ぐために、MaxQA インスタンスのリソースの最大 50% のみを使用して UDF を実行できます。
DQL 文の場合、デフォルトでは最大 100 万行のデータが返されます。
odps.sql.select.auto.limitパラメーターをより大きな値に設定することで、この制限を超えることができます(戻り値が大きすぎると実行効率に影響を与える可能性があるため、実際のビジネスニーズに応じて慎重に設定することをお勧めします)。Distributed MapJoin など、実行計画で常駐ワーカーを必要とするジョブは現在サポートされていません。
使用制限のために MaxQA ジョブが失敗した場合は、手動で再試行するか、バッチ処理クォータグループにジョブを送信してみてください。
異なる CU 仕様のシステムパラメーターの説明
CU 数 | 並列ジョブの最大数 | ジョブタイムアウト(分) | ジョブごとの最大同時実行性 |
32CU | 32 | 120 分 | CU 数 × 30 |
64CU | 48 | 120 分 | CU 数 × 30 |
96CU | 64 | 120 分 | CU 数 × 30 |
128CU | 80 | 120 分 | CU 数 × 30 |
160CU | 96 | 120 分 | CU 数 × 30 |
192CU | 112 | 120 分 | CU 数 × 30 |
224CU | 128 | 120 分 | CU 数 × 30 |
[256, 1024)CU | 144 | 120 分 | CU 数 × 30 |
[1024, 1536)CU | 288 | 120 分 | CU 数 × 30 |
[1536, 2048)CU | 432 | 180 分 | CU 数 × 30 |
[2048, 2560)CU | 576 | 240 分 | CU 数 × 30 |
[2560, 3072)CU | 720 | 300 分 | CU 数 × 30 |
[3072, 3584)CU | 864 | 360 分 | CU 数 × 30 |
[3584, 4096)CU | 1008 | 420 分 | CU 数 × 30 |
[4096, 4608)CU | 1152 | 480 分 | CU 数 × 30 |
[4608, 5120)CU | 1296 | 540 分 | CU 数 × 30 |
[5120, 5632)CU | 1440 | 600 分 | CU 数 × 30 |
[5632, 6144)CU | 1584 | 660 分 | CU 数 × 30 |
TPC-DS Performance Testing 結果
結果はリージョンによって若干異なる場合があります。 実際テスト結果を標準として使用する必要があります。
仕様 | 10GB | 100GB | 1TB |
64CU | 468s | 672s | 1978s |
128CU | 319s | 418s | 1001s |
上記の パフォーマンス テスト レポートは、中国(北京)リージョンのテスト環境から取得されました。
詳細なテスト計画と内容については、「TPC-DS Performance Testing」をご参照ください。
MaxQA と MCQA
比較項目 | MCQA | MaxQA (MCQA2.0) |
アーキテクチャ | サーバーレス リソースプールに基づいています。 | シングルテナントの分離されたコンピューティング環境。 |
遅延の安定性 | 平均。 | 良好。 |
コンピューティング パフォーマンス | オフラインモードよりも大幅に優れていますが、安定性が不十分です。 | 複数の最適化が組み込まれており、パフォーマンスが向上しています。 |
サポートされているジョブ タイプ | DQL のみをサポートします。 | DDL、DQL、DML を含むすべてのタイプの SQL 機能。 |
使用方法 | インタラクティブモードを有効にします。 | ジョブを送信するときに、インタラクティブクォータグループの名前を指定します。 詳細については、「MaxQA 機能の接続方法」をご参照ください。 |
クォータ ルーティング | サポートされています。 | 現在サポートされていません。 |
従量課金制 | サポートされています。 | 現在サポートされていません。 |
セッションの概念 | はい。 隣接する期間に同じクライアントから送信されたジョブは 1 つのセッションに属し、各セッションはインスタンス ID に対応します。 | いいえ。 各 SQL ジョブはインスタンス ID に対応します。 |
フォールバックメカニズム | バッチ処理モードに自動的にフォールバックする機能があります。 | 自動フォールバックはサポートされていません。 |
使用方法
MaxQA の具体的な使用方法については、「Query Acceleration MaxQA 操作ガイド」をご参照ください。