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

MaxCompute:制限

最終更新日:Nov 09, 2025

この Topic では、MaxCompute MapReduce の制限について説明します。これらの制限に違反すると、ビジネスに影響が及ぶ可能性があります。

次の表に、MaxCompute MapReduce の制限をまとめます。

境界名

値の範囲

分類

設定項目

デフォルト値

設定可能

説明

インスタンスが占有するメモリ

[256 MB, 12 GB]

メモリ制限

odps.stage.mapper(reducer).mem および odps.stage.mapper(reducer).jvm.mem

2,048 MB + 1,024 MB

はい

単一の map または reduce インスタンスが占有するメモリ。メモリは、デフォルトで 2,048 MB のフレームワークメモリと、デフォルトで 1,024 MB の Java 仮想マシン (JVM) ヒープメモリの 2 つの部分で構成されます。

リソース数

256

数量制限

-

N/A

いいえ

1 つのジョブで参照できるリソースは最大 256 個です。各テーブルまたはアーカイブは 1 つのリソースとしてカウントされます。

入力数と出力数

1,024 および 256

数量制限

-

N/A

いいえ

1 つのジョブの入力数は 1,024 を超えることはできず、出力数は 256 を超えることはできません。テーブルの 1 つのパーティションは 1 つの入力としてカウントされます。異なるテーブルの総数は 64 を超えることはできません。

カウンター数

64

数量制限

-

N/A

いいえ

1 つのジョブのカスタムカウンターの数は 64 を超えることはできません。グループ名とカウンター名に番号記号 (#) を含めることはできません。2 つの名前を合わせた長さは 100 文字を超えることはできません。

map インスタンス数

[1, 100000]

数量制限

odps.stage.mapper.num

N/A

はい

1 つのジョブの map インスタンス数は、分割サイズに基づいてフレームワークによって計算されます。入力テーブルが指定されていない場合、`odps.stage.mapper.num` パラメーターを設定して map インスタンス数を指定できます。値は [1, 100000] の範囲内である必要があります。

reduce インスタンス数

[0, 2000]

数量制限

odps.stage.reducer.num

N/A

はい

デフォルトでは、1 つのジョブの reduce インスタンス数は map インスタンス数の 4 分の 1 です。[0, 2000] の範囲の値を最終的な reduce インスタンス数として設定できます。場合によっては、reduce インスタンスが map インスタンスよりもはるかに多くのデータを処理することがあり、これにより reduce フェーズが遅くなります。1 つのジョブには最大 2,000 の reduce インスタンスを含めることができます。

再試行回数

3

数量制限

-

N/A

いいえ

失敗した map または reduce インスタンスは最大 3 回再試行されます。一部の再試行不可能な例外により、ジョブは直接失敗します。

ローカルデバッグモード

最大 100 インスタンス

数量制限

-

N/A

いいえ

ローカルデバッグモードでは:

  • map インスタンス数はデフォルトで 2 で、100 を超えることはできません。

  • reduce インスタンス数はデフォルトで 1 で、100 を超えることはできません。

  • 1 つの入力に対してダウンロードされるレコード数はデフォルトで 100 で、10,000 を超えることはできません。

リソースの繰り返し読み取り回数

64

数量制限

-

N/A

いいえ

1 つの map または reduce インスタンスは、同じリソースを最大 64 回読み取ることができます。

リソースサイズ

2 GB

長さ制限

-

N/A

いいえ

1 つのジョブで参照されるリソースの合計サイズは 2 GB を超えることはできません。

分割サイズ

1 以上

長さ制限

odps.stage.mapper.split.size

256 MB

はい

フレームワークは、指定された分割サイズに基づいて map インスタンスの数を決定します。

STRING 型列のコンテンツ長

8 MB

長さ制限

-

N/A

いいえ

MaxCompute テーブルの STRING 型列のコンテンツ長は 8 MB を超えることはできません。

ワーカー実行タイムアウト

[1, 3600]

時間制限

odps.function.timeout

600

はい

map または reduce ワーカーがデータの読み書きを行わず、context.progress() を使用してハートビートを送信しない場合のタイムアウト期間。デフォルト値は 600 秒です。

MapReduce で参照されるテーブルリソースでサポートされるフィールドタイプ

BIGINT、DOUBLE、STRING、DATETIME、および BOOLEAN

データ型制限

-

N/A

いいえ

MapReduce タスクがテーブルリソースを参照するときに、テーブルにサポートされていないデータ型のフィールドが含まれている場合、エラーが報告されます。

MapReduce は OSS からデータを読み取れますか?

-

機能制限

-

N/A

いいえ

MapReduce は OSS からデータを読み取ることができません。

MaxCompute V2.0 の新しいデータ型のサポート

-

機能制限

-

N/A

いいえ

MapReduce は MaxCompute V2.0 の新しいデータ型をサポートしていません。

説明

スキーマが有効になっているプロジェクトでは、MaxCompute MapReduce ジョブはサポートされていません。プロジェクトをアップグレードして スキーマをサポート するようにした場合、MaxCompute MapReduce ジョブを実行できなくなります。