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

MaxCompute:使用制限

最終更新日:Mar 26, 2026

MaxCompute は、計算リソース、ジョブ、および文のレベルでクォータを適用します。このページでは、各機能領域におけるハードリミットと、調整可能な制限項目を示します。

サブスクリプション計算リソース

デフォルトのサブスクリプションクォータは 2,000 計算ユニット (CU) です。この上限を引き上げるには、Alibaba Cloud アカウントを使用してチケットを送信してください。MaxCompute エンジニアが 3 営業日以内にリクエストを確認し、結果をショートメッセージでお知らせします。

従量課金計算リソース

以下の表は、指定されたリージョンで単一ユーザーが同時に消費できる最大 CU 数を示しています。この上限により、特定のユーザーがクラスターリソースを枯渇させ、他のユーザーのジョブ実行を妨げることを防止します。

重要

これらの値は取得可能な最大 CU 数であり、保証される最小値ではありません。MaxCompute はクエリを高速化するために追加の CU を割り当てる場合があります。

国または地域リージョン最大 CU 数 (従量課金)
中国内のリージョン中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (ウランチャブ)、中国 (深セン)、中国東部 2 Finance、中国北部 2 Ali Gov、中国南部 1 Finance2,000
中国内のリージョン中国 (成都)、中国 (香港)500
その他の国または地域シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、日本 (東京)、ドイツ (フランクフルト)、米国 (シリコンバレー)、米国 (バージニア)、イギリス (ロンドン)、UAE (ドバイ)500

サブスクリプショントンネルスロット

サブスクリプショントンネルスロットのデフォルトクォータは 500 です。500 スロットを超えて購入するには、を送信してください。

SQL 制限

以下の表は、MaxCompute における SQL ステートメント、テーブル、およびジョブ実行に適用される制限を示しています。適用範囲 列は、制限が適用される範囲を示します。調整可否 列は、チケットを送信することで制限を引き上げられるかどうかを示します。

項目制限適用範囲調整可能注記
テーブル名の長さ128 バイトテーブルいいえ名前には英字、数字、アンダースコア (_) のみを使用でき、先頭は英字である必要があります。
コメントの長さ1,024 バイトテーブルいいえ
テーブルごとのカラム定義1,200テーブルいいえ
テーブルあたりのパーティション数60,000テーブルいいえ
テーブルあたりのパーティション階層数6テーブルいいえ
カラムレコード長8 MBテーブルいいえ
カラムのデータ型および位置変更不可テーブルいいえ
ビューの書き込み可否書き込み不可テーブルいいえビューは INSERT をサポートしません。
クエリごとにクエリ可能なパーティション10,000クエリいいえ
SELECT 出力行10,000クエリいいえ
MULTI-INSERT 送信先テーブル256いいえ
UNION ALL 結合されたテーブル256いいえ
MAPJOIN small テーブル128いいえ
MAPJOIN 小規模テーブル合計メモリ512 MBいいえ単一の文内にあるすべての小規模テーブルに適用されます。
ptinsubq (サブクエリ内のパーティション) 行数1,000いいえ
SQL ステートメント長2 MBいいえSDK 経由で SQL を実行する場合に適用されます。
IN 句パラメーター1,024 (推奨)ハードリミットではありません。1,024 を超えるとコンパイル性能が低下します。
Java ユーザー定義関数 (UDF)抽象または静的いいえ
jobconf.json ファイルサイズ1 MBジョブいいえパーティション数が多いテーブルでは、この制限を超える可能性があります。
SQL 実行計画サイズ1 MBジョブいいえ超過時のエラー: FAILED: ODPS-0010000:System internal error - The Size of Plan is too large
最大ジョブ実行時間72 時間ジョブいいえデフォルトは 24 時間です。set odps.sql.job.max.time.hours=72; を実行すると、72 時間に延長できます。72 時間を超えたジョブは自動的に停止されます。

詳細については、「SQL」をご参照ください。

MapReduce 制限

以下の表は、MapReduce ジョブに適用される制限を示しています。調整可否 列が はい となっている項目は、記載されている構成パラメーターを使用して変更できます。

項目適用範囲調整可能構成パラメーターデフォルト
インスタンスあたりのメモリ (フレームワーク + Java 仮想マシン (JVM) ヒープ)256 MB~12 GBインスタンスはいodps.stage.mapper(reducer).mem および odps.stage.mapper(reducer).jvm.mem2,048 MB (フレームワーク) + 1,024 MB (JVM)
インスタンスあたりの再試行回数3インスタンスいいえ
インスタンスあたりのリソース繰り返し読み取り回数64インスタンスいいえ
文字列カラム長8 MBインスタンスいいえ
ワーカータイムアウト (context.progress() によるデータの読み取り/書き込みまたはハートビートなし)1~3,600 秒インスタンスはいodps.function.timeout600 秒
ジョブあたりのリソース数256ジョブいいえ
ジョブあたりの入力数1,024ジョブいいえ
ジョブあたりの入力テーブル数64ジョブいいえ
ジョブあたりの出力数256ジョブいいえ
ジョブあたりのカスタムカウンター数64ジョブいいえ
カウンターグループ名 + カウンター名の合計文字数100 文字ジョブいいえ
ジョブあたりのリソース合計バイト数2 GBジョブいいえ
ジョブあたりのマップインスタンス数1~100,000ジョブはいodps.stage.mapper.numスプリットサイズから計算
ジョブあたりのリデュースインスタンス数0~2,000ジョブはいodps.stage.reducer.numマップインスタンス数の 25 %
スプリットサイズ≥ 1ジョブはいodps.stage.mapper.split.size256 MB
サポートされるフィールド型BIGINT、DOUBLE、STRING、DATETIME、BOOLEANジョブいいえ

追加の制限事項:

  • カウンターグループ名およびカウンター名にシャープ記号 (#) を含めることはできません。

  • MapReduce は Object Storage Service (OSS) からデータを読み取ることはできません。

  • MapReduce は MaxCompute V2.0 で導入された新しいデータ型をサポートしていません。

ローカルデバッグモードの制限:

項目デフォルト最大値
マップインスタンス数2100
リデュースインスタンス数1100
入力あたりのダウンロードレコード数10010,000

詳細については、「MapReduce」をご参照ください。

PyODPS 制限

DataWorks を通じて MaxCompute で PyODPS ジョブを開発する際には、以下の制限が適用されます。

  • 各 PyODPS ノードは、最大 50 MB のデータを処理でき、最大 1 GB のメモリを消費できます。いずれかの制限を超えると、DataWorks によってノードが終了されます。PyODPS ジョブ内で大規模なデータセットに対して直接 Python データ処理コードを記述することは避けてください。

  • DataWorks はゲートウェイでの CPU 使用率およびメモリ使用量を制限し、過負荷を防止しています。システムに Got killed と表示された場合、メモリ使用量が制限を超え、関連プロセスが終了されています。ローカルでのデータ操作はこれらの制限の影響を受けますが、PyODPS によって開始された SQL および DataFrame タスク (to_pandas を除く) は影響を受けません。

  • Python の atexit パッケージはサポートされていません。try-finally 構造を使用してください。

  • options.tunnel.use_instance_tunnel は DataWorks でデフォルトで False に設定されています。グローバルに InstanceTunnel を有効にするには、これを True に設定してください。

  • DataWorks でのコードの記述およびデバッグは効率が限定的です。ローカルマシンに統合開発環境 (IDE) をインストールしてコードを記述することを推奨します。

パッケージの制限事項:

matplotlib などのパッケージは DataWorks 環境で利用できないため、以下の制限が適用されます。

コンテキスト利用可能なライブラリ制限事項
DataFrame ユーザー定義関数Pure Python ライブラリおよび NumPypandas およびその他のサードパーティ製ライブラリは使用できません。UDF は実行前に MaxCompute にコミットする必要があります。
非 UDF 関数NumPy および pandas (プリインストール済み)バイナリコードを含むサードパーティ製パッケージはサポートされていません。
DataFrame plot 関数matplotlib が存在しないため影響を受けます。

詳細については、「PyODPS」をご参照ください。

Graph 制限

MaxCompute の Graph ジョブには、以下の制限が適用されます。

項目制限注記
ジョブあたりのリソース数256各テーブルまたはアーカイブは 1 つのリソースとしてカウントされます。
ジョブあたりのリソース合計バイト数512 MB
ジョブあたりの入力数1,024入力テーブル数は 64 を超えてはなりません。
ジョブあたりの出力数256
ジョブあたりのカスタムカウンター数64カウンターグループ名およびカウンター名に # を含めることはできません。両方の名前の合計文字数は 100 文字を超えてはなりません。
出力ラベル長256 文字ラベルには英字、数字、_#.、および - を使用できます。ラベルは null または空文字列であってはなりません。
ジョブあたりのワーカー数1,000 (最大)ワーカー数がこの値を超えるとエラーが返されます。
ワーカーあたりの CPU200 単位 (デフォルト)。有効値:50~800
ワーカーあたりのメモリ4,096 MB (デフォルト)。有効値:256 MB~12 GB
ワーカーあたりのリソース繰り返し読み取り回数64
split_size64 MB (デフォルト)。> 0 かつ ≤ 9223372036854775807 >> 20 である必要があります

サンドボックス制限: GraphLoader、Vertex、およびAggregatorは、クラスター環境でJava サンドボックス下で実行されます。Graph ジョブのメインプログラムは、Java サンドボックスによって制限されません。詳細については、「Java サンドボックス」をご参照ください。

詳細については、「Graph」をご参照ください。

同時実行ジョブ制限

MaxCompute は、単一プロジェクト内で同時に実行できるジョブ数を制限しています。同時実行ジョブ数が上限に達した状態でジョブを送信し続けると、次のエラーメッセージが表示されます。

com.aliyun.odps.OdpsException: Request rejected by flow control. You have exceeded the limit for the number of tasks you can run concurrently in this project. Please try later
リージョンプロジェクトあたりの最大同時実行ジョブ数
中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (ウランチャブ)、中国 (深セン)、中国 (成都)2,500
中国 (香港)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、日本 (東京)、ドイツ (フランクフルト)、米国 (シリコンバレー)、米国 (バージニア)、イギリス (ロンドン)、UAE (ドバイ)1,000

リージョン

MaxCompute プロジェクトあたりの最大同時実行ジョブ数

中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (ウランチャブ)、中国 (深セン)、中国 (成都)

2500

中国 (香港)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、日本 (東京)、ドイツ (フランクフルト)、米国 (シリコンバレー)、米国 (バージニア)、イギリス (ロンドン)、UAE (ドバイ)

1000