Topik ini menjelaskan batasan dari MaxCompute MapReduce. Pelanggaran terhadap batasan ini dapat memengaruhi bisnis Anda.
Tabel berikut merangkum batasan MaxCompute MapReduce.
Nama Batas | Rentang nilai | Klasifikasi | Item konfigurasi | Nilai default | Dapat dikonfigurasi | Deskripsi |
Memori yang digunakan oleh sebuah instans | [256 MB, 12 GB] | Batas memori |
| 2.048 MB + 1.024 MB | Ya | Memori yang digunakan oleh satu instans map atau reduce. Memori ini terdiri dari dua bagian: memori framework, yang secara default sebesar 2.048 MB, dan memori heap Java Virtual Machine (JVM), yang secara default sebesar 1.024 MB. |
Jumlah sumber daya | 256 | Batas jumlah | - | N/A | Tidak | Satu pekerjaan dapat mereferensikan maksimal 256 sumber daya. Setiap tabel atau arsip dihitung sebagai satu sumber daya. |
Jumlah input dan output | 1.024 dan 256 | Batas jumlah | - | N/A | Tidak | Jumlah input untuk satu pekerjaan tidak boleh melebihi 1.024, dan jumlah output tidak boleh melebihi 256. Satu partisi tabel dihitung sebagai satu input. Jumlah total tabel yang berbeda tidak boleh melebihi 64. |
Jumlah pencacah (counter) | 64 | Batas jumlah | - | N/A | Tidak | Jumlah pencacah kustom dalam satu pekerjaan tidak boleh melebihi 64. Nama Grup dan Nama Pencacah tidak boleh mengandung tanda pagar (#). Panjang gabungan kedua nama tersebut tidak boleh melebihi 100 karakter. |
Jumlah instans map | [1, 100000] | Batas jumlah | odps.stage.mapper.num | N/A | Ya | Jumlah instans map untuk satu pekerjaan dihitung oleh framework berdasarkan ukuran pemisahan (split size). Jika tidak ada tabel input yang ditentukan, Anda dapat mengatur parameter odps.stage.mapper.num untuk menentukan jumlah instans map. Nilainya harus berada dalam rentang [1, 100000]. |
Jumlah instans reduce | [0, 2000] | Batas jumlah | odps.stage.reducer.num | N/A | Ya | Secara default, jumlah instans reduce untuk satu pekerjaan adalah seperempat dari jumlah instans map. Anda dapat mengatur nilai dalam rentang [0, 2000] sebagai jumlah akhir instans reduce. Dalam beberapa kasus, satu instans reduce mungkin memproses data jauh lebih banyak daripada instans map, sehingga memperlambat fase reduce. Satu pekerjaan dapat memiliki maksimal 2.000 instans reduce. |
Jumlah percobaan ulang | 3 | Batas jumlah | - | N/A | Tidak | Instans map atau reduce yang gagal akan dicoba ulang maksimal tiga kali. Beberapa pengecualian yang tidak dapat dicoba ulang menyebabkan pekerjaan langsung gagal. |
Mode debug lokal | Maksimal 100 instans | Batas jumlah | - | N/A | Tidak | Dalam mode debug lokal:
|
Jumlah kali pembacaan ulang sumber daya | 64 | Batas jumlah | - | N/A | Tidak | Satu instans map atau reduce dapat membaca sumber daya yang sama maksimal 64 kali. |
Ukuran sumber daya | 2 GB | Batas panjang | - | N/A | Tidak | Total ukuran sumber daya yang direferensikan oleh satu pekerjaan tidak boleh melebihi 2 GB. |
Ukuran pemisahan (split size) | Lebih besar dari atau sama dengan 1 | Batas panjang | odps.stage.mapper.split.size | 256 MB | Ya | Framework menentukan jumlah instans map berdasarkan ukuran pemisahan yang ditentukan. |
Panjang konten kolom STRING | 8 MB | Batas panjang | - | N/A | Tidak | Panjang konten dalam kolom STRING pada tabel MaxCompute tidak boleh melebihi 8 MB. |
Waktu tunggu eksekusi worker | [1, 3600] | Batas waktu | odps.function.timeout | 600 | Ya | Periode waktu tunggu untuk worker map atau reduce ketika worker tersebut tidak membaca atau menulis data dan tidak mengirim heartbeat menggunakan |
Tipe bidang yang didukung untuk sumber daya tabel yang direferensikan oleh MapReduce | BIGINT, DOUBLE, STRING, DATETIME, dan BOOLEAN | Batas tipe data | - | N/A | Tidak | Ketika tugas MapReduce mereferensikan sumber daya tabel, kesalahan akan dilaporkan jika tabel tersebut berisi bidang dengan tipe data yang tidak didukung. |
Apakah MapReduce dapat membaca data dari OSS? | - | Batas fitur | - | N/A | Tidak | MapReduce tidak dapat membaca data dari OSS. |
Dukungan untuk tipe data baru di MaxCompute V2.0 | - | Batas fitur | - | N/A | Tidak | MapReduce tidak mendukung tipe data baru di MaxCompute V2.0. |
Pekerjaan MaxCompute MapReduce tidak didukung di proyek yang telah mengaktifkan skema. Jika Anda meningkatkan proyek Anda ke dukungan skema, Anda tidak dapat lagi menjalankan pekerjaan MaxCompute MapReduce.