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

MaxCompute:SQL の制限事項

最終更新日:Mar 28, 2026

MaxCompute SQL は、大規模なデータセットを処理するために設計されています。システムの安定性と運用効率を確保するため、MaxCompute SQL にはいくつかの制限事項があります。このトピックでは、MaxCompute SQL の制限事項について説明します。

項目

制限

カテゴリ

説明

テーブル名の長さ

128 バイト

長さの制限

テーブル名には特殊文字を含めることはできず、先頭は文字である必要があります。また、使用できるのは文字 (a-z、A-Z)、数字、アンダースコア (_) のみです。

列名の長さ

128 バイト

長さの制限

  • 列名では大文字と小文字は区別されず、特殊文字を含めることはできません。使用できるのは、文字 (a-z、A-Z)、数字、アンダースコア (_)、または漢字のみです。列名の先頭には文字を使用することを推奨します。列名は 128 バイトを超えることはできません。

  • SET odps.sql.bigquery.compatible=true; コマンドで BigQuery 互換モードを有効にすると、列名の最大長は 256 バイトに増加します。

コメントの長さ

1,024 バイト

長さの制限

コメントは、1,024 バイトを超えない有効な文字列である必要があります。

テーブルあたりの列数

1,200

数量の制限

1 つのテーブルでサポートされる列数は最大 1,200 です。

テーブルあたりのパーティション数

60,000

数量の制限

1 つのテーブルでサポートされるパーティション数は最大 60,000 です。

テーブルあたりのパーティションレベル数

6

数量の制限

1 つのテーブルでサポートされるパーティションレベル数は最大 6 です。

画面表示

10,000 行

数量の制限

SELECT 文では、画面に最大 10,000 行を表示できます。

INSERT の宛先テーブル

256

数量の制限

MULTI-INSERT 文では、最大 256 の宛先テーブルに書き込むことができます。

UNION ALL

256

数量の制限

UNION ALL 文では、最大 256 のテーブルを結合できます。

MAPJOIN

128

数量の制限

MAPJOIN 操作では、最大 128 の small テーブルを結合できます。

MAPJOIN のメモリ制限

512 MB

数量の制限

MAPJOIN 操作では、結合されるすべての small テーブルの合計メモリサイズが 512 MB を超えることはできません。

ptinsubq (サブクエリ内のパーティション)

1,000 行

数量の制限

サブクエリにパーティション列が含まれる場合、そのサブクエリが返すことができる行数は最大 1,000 行です。

SQL ステートメントの長さ

2 MB

長さの制限

SQL ステートメントは 2 MB を超えることはできません。この制限は、SDK を介して実行される SQL ステートメントにも適用されます。

セルサイズ

8 MB

数量の制限

単一テーブルのセル内のデータは 8 MB を超えることはできません。

IN 句のパラメーター数

1,024

数量の制限

IN 句で推奨されるパラメーターの最大数は 1,024 です (例:in (1,2,3...,1024))。in(...) 句にパラメーターが多すぎると、コンパイルパフォーマンスが低下する可能性があります。値 1,024 は推奨値であり、厳密な制限ではありません。

jobconf.json のサイズ

1 MB

長さの制限

jobconf.json のサイズは 1 MB です。テーブルに多数のパーティションが含まれている場合、jobconf.json のサイズが 1 MB を超えることがあります。

ビュー

書き込み不可

操作の制限

ビューは読み取り専用であり、INSERT 操作はサポートされていません。

列のデータ型

変更不可

操作の制限

既存の列のデータ型や位置を変更することはできません。

Java ユーザー定義関数 (UDF)

ABSTRACT または STATIC にはできません。

操作の制限

Java UDF は ABSTRACT または STATIC として定義することはできません。

クエリ対象の最大パーティション数

10,000

数量の制限

1 つのクエリでスキャンできるパーティション数は最大 10,000 です。

SQL 実行計画のサイズ

1 MB

長さの制限

MaxCompute SQL によって生成される実行計画は 1 MB を超えることはできません。超えた場合、ジョブは失敗し、次のエラーが返されます:FAILED: ODPS-0010000:System internal error - The Size of Plan is too large

ジョブの最大実行時間

72 時間

実行時間の制限

デフォルトでは、単一の SQL ジョブの最大実行時間は 24 時間です。次のコマンドを使用することで、この制限を 72 時間まで延長できます。72 時間を超えて実行されるジョブは、システムによって自動的に終了されます。

SET odps.sql.job.max.time.hours=72;

パーティション作成の頻度

120 回/15 秒

頻度の制限

ALTER TABLE <table_name> ADD PARTITION <pt_spec> 操作は、15 秒あたり最大 120 回実行できます。

説明

これらの MaxCompute SQL の制限事項の一部は変更できません。