All Products
Search
Document Center

E-MapReduce:JindoDistCp FAQ

Last Updated:Mar 27, 2026

Mengapa pencatatan objek memakan waktu sangat lama?

Ketika klien Jindo DistCp kehabisan memori heap, hasil pencatatan tidak dapat disimpan secara efisien, sehingga proses pencatatan objek melambat secara drastis. Dalam kondisi normal, OSS mencatat 1.000 objek per detik. Jika Anda melihat baris log seperti berikut, di mana 315 objek memerlukan sekitar 100 detik untuk dicatat, hal ini menandakan bahwa klien kehabisan memori heap:

Successfully list objects with prefix xxx/yyy/ in bucket xxx recursive 0 result 315 dur 100036.615031MS

Tingkatkan ukuran heap JVM sebelum menjalankan pekerjaan:

export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS -Xmx4096m"

Mengapa saya mendapatkan pesan "Failed to get checksum store"?

OSS-HDFS menggunakan COMPOSITE_CRC sebagai algoritma checksum default. Jika kluster HDFS Anda memiliki pengaturan dfs.checksum.combine.mode yang diatur ke MD5MD5CRC, OSS-HDFS tidak dapat menyelaraskan perbedaan tersebut, sehingga pekerjaan gagal dengan error ini.

Atur fs.oss.checksum.combine.mode agar sesuai dengan konfigurasi HDFS Anda:

hadoop jar jindo-distcp-${version}.jar --src /data --dest oss://destBucket/ --hadoopConf fs.oss.checksum.combine.mode=MD5MD5CRC

Mengapa saya mendapatkan pesan "verify checksum failed" saat menyalin dari OSS ke OSS-HDFS?

Jindo DistCp memverifikasi integritas data menggunakan checksum yang ditulis selama transfer awal. Jika objek di OSS tidak dimigrasikan dari HDFS ke OSS menggunakan Jindo DistCp, tidak ada catatan checksum yang sesuai, sehingga verifikasi gagal.

Tambahkan --disableChecksum untuk melewati verifikasi checksum pada objek tersebut:

hadoop jar jindo-distcp-${version}.jar --src oss://ossBucket/ --dest oss://dlsBucket/ --disableChecksum

Bagaimana cara memverifikasi bahwa pekerjaan Jindo DistCp berhasil diselesaikan?

Jawabannya bergantung pada apakah Anda menggunakan --ignore.

Tanpa --ignore: Jindo DistCp langsung berhenti ketika terjadi error apa pun dan menghentikan operasi penyalinan.

Dengan --ignore: Pekerjaan tetap berjalan hingga selesai meskipun terjadi error pada file tertentu. Periksa penghitung (counter) pekerjaan setelah eksekusi selesai dan pastikan nilai COPY_FAILED dan CHECKSUM_DIFF keduanya nol. Jika salah satu counter bernilai bukan nol, berarti beberapa file tidak ditransfer dengan benar. Untuk daftar lengkap counter dan penjelasannya, lihat Jindo DistCp counters dalam topik Use Jindo DistCp.