全部产品
Search
文档中心

MaxCompute:Batasan SQL MaxCompute

更新时间:Jun 19, 2025

MaxCompute SQL adalah bahasa SQL yang dirancang untuk mengolah dataset berukuran besar. Saat menggunakan MaxCompute SQL untuk memproses data dalam jumlah besar, Anda perlu memperhatikan beberapa batasan agar sistem tetap stabil dan operasi berjalan efisien. Topik ini menjelaskan batasan yang berlaku pada MaxCompute SQL.

Item

Nilai maksimum/Batasan

Kategori

Deskripsi

Panjang nama tabel

128 byte

Panjang

Nama tabel atau kolom hanya dapat berisi huruf, angka, dan garis bawah (_). Nama tersebut harus dimulai dengan huruf. Karakter khusus tidak didukung.

Panjang komentar

1.024 byte

Panjang

Komentar adalah string yang valid yang tidak boleh melebihi 1.024 byte panjangnya.

Definisi kolom dalam tabel

1.200

Jumlah

Tabel dapat berisi maksimal 1.200 definisi kolom.

Partisi dalam tabel

60.000

Jumlah

Tabel dapat berisi maksimal 60.000 partisi.

Tingkat partisi tabel

6

Jumlah

Tabel dapat berisi maksimal enam tingkat partisi.

Tampilan keluaran

10.000 baris

Jumlah

Pernyataan SELECT dapat mengembalikan maksimal 10.000 baris.

Jumlah tabel tujuan untuk operasi INSERT

256

Jumlah

Pernyataan MULTI-INSERT memungkinkan Anda memasukkan data ke maksimal 256 tabel secara bersamaan.

UNION ALL

256

Jumlah

Pernyataan UNION ALL memungkinkan Anda menggabungkan maksimal 256 tabel.

MAPJOIN

128

Jumlah

Petunjuk MAPJOIN memungkinkan Anda menggabungkan maksimal 128 tabel kecil.

Memori MAPJOIN

512 MB

Jumlah

Ukuran memori untuk semua tabel kecil tidak boleh melebihi 512 MB saat Anda menentukan petunjuk MAPJOIN dalam pernyataan SQL.

ptinsubq(partisi dalam subquery)

1.000 baris

Jumlah

Pernyataan PT IN SUBQUERY dapat menghasilkan maksimal 1.000 baris.

Panjang pernyataan SQL

2 MB

Panjang

Pernyataan SQL tidak boleh melebihi 2 MB panjangnya. Batasan ini cocok untuk skenario di mana Anda menggunakan SDK untuk mengeksekusi pernyataan SQL.

Panjang rekaman kolom

8 MB

Jumlah

Panjang maksimum rekaman kolom dalam tabel adalah 8 MB.

Parameter dalam klausa IN

1.024

Jumlah

Item ini menentukan jumlah maksimum parameter dalam klausa IN, seperti in (1,2,3....,1024). Jika jumlah parameter dalam klausa IN terlalu besar, kinerja kompilasi akan terpengaruh secara negatif. Kami merekomendasikan agar Anda menggunakan maksimal 1.024 parameter, tetapi ini bukan batas atas tetap.

jobconf.json

1 MB

Panjang

Ukuran maksimum file jobconf.json adalah 1 MB. Jika sebuah tabel berisi sejumlah besar partisi, ukuran file jobconf.json mungkin melebihi 1 MB.

Tampilan

Tidak dapat ditulis

Operasi

Tampilan tidak dapat ditulis dan tidak mendukung pernyataan INSERT.

Tipe data dan posisi kolom

Tidak dapat dimodifikasi

Operasi

Tipe data dan posisi kolom tidak dapat dimodifikasi.

Fungsi yang ditentukan pengguna Java (UDF)

Tidak diperbolehkan menjadi abstract atau static

Operasi

UDF Java tidak dapat menjadi abstract atau static.

Partisi yang dapat di-query

10.000

Jumlah

Maksimal 10.000 partisi dapat di-query.

Rencana eksekusi SQL

1 MB

Panjang

Ukuran rencana eksekusi yang dihasilkan dengan menggunakan pernyataan SQL MaxCompute tidak boleh melebihi 1 MB. Jika tidak, pesan kesalahan FAILED: ODPS-0010000:System internal error - The Size of Plan is too large akan dilaporkan.

Durasi eksekusi maksimum pekerjaan tunggal

72 jam

Durasi eksekusi

Durasi eksekusi maksimum default untuk pekerjaan SQL tunggal adalah 24 jam. Anda dapat menggunakan pengaturan parameter berikut untuk menjalankan pekerjaan SQL tunggal hingga 72 jam. Pekerjaan SQL tidak dapat berjalan lebih dari 72 jam. Jika pekerjaan SQL berjalan selama 72 jam, pekerjaan tersebut akan otomatis dihentikan.

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

Frekuensi pembuatan partisi tabel

120 kali setiap 15 detik

Batas frekuensi

Batas frekuensi untuk menjalankan operasi ALTER TABLE <table_name> ADD PARTITION <pt_spec> untuk membuat partisi tabel adalah 120 kali setiap 15 detik.

null

Beberapa batasan di atas tidak dapat diubah secara manual.