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

MaxCompute:MaxFrame

最終更新日:Jan 10, 2026

機能紹介

MaxFrame は、Alibaba Cloud MaxCompute のための分散コンピューティングフレームワークです。従来の Python データ処理における 2 つの主要な問題、すなわちパフォーマンスボトルネック非効率なデータ移動を解決するための Python プログラミングインターフェイスを提供します。MaxFrame を使用することで、視覚的なデータ探索、科学計算、機械学習や AI 開発などのタスクのために、MaxCompute 上で直接ペタバイト規模のビッグデータを分散処理・分析できます。これにより、Python エコシステムにおける効率的なビッグデータ処理と AI 開発への高まる需要に応えます。

利用シーン

対話的なデータ探索

MaxFrame は、ローカルの Jupyter Notebook で作業するのと同様に、メモリ制限のないスムーズなエクスペリエンスを提供し、大規模なデータセットのリアルタイムな探索的分析、操作、可視化を実現します。

大規模データ前処理 (ETL)

テラバイト規模の生データに対するデータクリーニング、フォーマット変換、特徴量エンジニアリングなどのタスクにおいて、複雑な SQL とユーザー定義関数 (UDF) のロジックの代わりに、表現力豊かで保守性の高い Python コードを使用できます。このアプローチは、分散実行による高いパフォーマンスも提供します。

AI と機械学習

モデル開発ワークフローにおいて、MaxFrame はデータ処理とモデルトレーニングのエクスペリエンスを統一します。MaxFrame を使用して効率的にトレーニングデータを準備し、イメージ特徴と組み合わせて Scikit-learn や XGBoost などのライブラリをインポートし、エンドツーエンドの AI ワークフローを構築できます。

適用範囲

サポートされているリージョン

中国 (杭州)、中国 (上海)、中国 (北京)、中国 (深セン)、中国 (香港)、日本 (東京)、シンガポール、インドネシア (ジャカルタ)、ドイツ (フランクフルト)、米国 (シリコンバレー)、および米国 (バージニア)。

サポートされている環境

  • ローカルの Python 開発環境。

  • MaxCompute Notebook。

  • DataWorks Notebook。

  • DataWorks データ開発 PyODPS 3 タスクノード。

課金

MaxFrame は、ジョブの計算リソース使用量に基づいて課金されます。サブスクリプションの課金方法をサポートしています。

  • サブスクリプション:ジョブは、購入したリソースグループのクォータを消費し、追加料金は発生しません。

詳細については、「MaxCompute の請求と使用量の詳細分析」をご参照ください。

主な利点

他の Python 開発ツールと比較して、MaxFrame は使い慣れた開発習慣により適合し、より効率的なデータ処理、よりエラスティックな計算リソース、そしてより便利な開発エクスペリエンスを提供します。

  • Pandas 互換 API:MaxFrame は Pandas と高い互換性を持つ API を提供します。これにより、既存のコードを MaxCompute プラットフォームへスムーズに移行でき、学習コストと移行コストを大幅に削減します。

  • サーバーサイドの分散実行:MaxFrame のジョブは MaxCompute クラスター内で直接実行されます。データをローカルクライアントにプルする必要はありません。これにより、クライアントのメモリ不足によるパフォーマンスボトルネックを解消し、ペタバイト規模のデータの効率的な処理を可能にします。

  • エラスティックコンピューティングリソース:MaxFrame は MaxCompute のサーバーレスアーキテクチャを利用して、オンデマンドで計算リソースを割り当てます。クラスター管理なしで、あらゆる規模のデータを処理できます。

  • シンプルな開発環境:MaxFrame は、Pandas や XGBoost などの一般的なライブラリがプリインストールされた Python 3.7 および Python 3.11 環境を内蔵しています。シンプルなアノテーションでサードパーティの依存関係を管理できます。これにより、環境構成と依存関係管理が大幅に簡素化され、UDF の依存関係を手動でパッケージ化してアップロードするよりも便利です。

次の表は、このツールと他の Python 開発ツールを比較したものです。

比較項目

MaxFrame

PyODPS

Mars

SQL + UDF

開発インターフェイス

Pandas 互換

構文とインターフェイスは Pandas DataFrame と大きく異なります。

SQL と Python の 2 つのインターフェイスを使用する必要があります。

データ処理

実行時に、データをローカルクライアントにプルして処理する必要はありません。これにより、不要なローカルデータ転送を削減し、ジョブの実行効率を向上させます。

PyODPS では、to_pandas メソッドはデータをローカルクライアントにプルして計算のために読み取ります。

一部のオペレーターのみ分散実行がサポートされています。

初期化時にクラスターを作成する必要があり、遅くて不安定になることがあります。

MaxCompute SQL の機能に基づいて分散ジョブをサポートします。

計算リソース

ローカルリソースのサイズに制限されず、シングルマシン Python のパフォーマンスボトルネックを突破します。

ローカルリソースのサイズに制限されます。

リソースサイズに制限されます。ワーカー、CPU、メモリのサイズを指定する必要があります。

MaxCompute のサーバーレスアーキテクチャに基づいて、SQL ジョブのエラスティックコンピューティングを可能にします。

開発エクスペリエンス

すぐに使える対話型開発環境とオフラインスケジューリング機能を提供します。一般的なライブラリが組み込まれており、アノテーションによる依存関係管理をサポートしているため、手動でのパッケージ化は不要です。

すぐに使える対話型開発環境とオフラインスケジューリング機能を提供します。

対応するランタイム環境を準備し、Mars クラスターを起動する必要があります。

Python UDF の依存関係パッケージは、手動でパッケージ化してアップロードする必要があります。

仕組み

MaxFrame は分散処理の複雑さを隠蔽します。自動化されたワークフローは次のとおりです:

  1. コードの送信:Notebook などのクライアントで Python コードを記述して実行します。MaxFrame SDK はコードをキャプチャし、MaxCompute に送信します。

  2. 解析と最適化:MaxCompute 実行エンジンがジョブを受信すると、構文を解析し、論理的最適化を実行し、ジョブを並列実行可能な物理プランに変換します。

  3. 分散実行:最適化されたタスクは MaxCompute クラスター内の複数の計算ノードに分散され、データを直接読み取って並列計算を実行します。

  4. 結果の返却:計算が完了すると、結果が集約され、ご利用のクライアントに返されます。

関連ドキュメント