Fitur DataprocFileOutputCommitter adalah versi FileOutputCommitter
open source yang telah ditingkatkan. Hal ini
memungkinkan penulisan serentak oleh tugas Apache Spark ke lokasi output.
Batasan
Fitur DataprocFileOutputCommitter
mendukung tugas Spark yang berjalan pada cluster Compute Engine Dataproc yang dibuat dengan versi image berikut:
Gambar 2.1 versi 2.1.10 dan yang lebih tinggi
Gambar 2.0 versi 2.0.62 dan yang lebih tinggi
Gunakan DataprocFileOutputCommitter
Untuk menggunakan fitur ini:
Buat Dataproc di cluster Compute Engine menggunakan versi gambar
2.1.10
atau2.0.62
atau yang lebih tinggi.Tetapkan
spark.hadoop.mapreduce.outputcommitter.factory.class=org.apache.hadoop.mapreduce.lib.output.DataprocFileOutputCommitterFactory
danspark.hadoop.mapreduce.fileoutputcommitter.marksuccessfuljobs=false
sebagai properti tugas saat Anda mengirimkan tugas Spark ke cluster.- Contoh Google Cloud CLI:
gcloud dataproc jobs submit spark \ --properties=spark.hadoop.mapreduce.outputcommitter.factory.class=org.apache.hadoop.mapreduce.lib.output.DataprocFileOutputCommitterFactory,spark.hadoop.mapreduce.fileoutputcommitter.marksuccessfuljobs=false \ --region=REGION \ other args ...
- Contoh kode:
sc.hadoopConfiguration.set("spark.hadoop.mapreduce.outputcommitter.factory.class","org.apache.hadoop.mapreduce.lib.output.DataprocFileOutputCommitterFactory") sc.hadoopConfiguration.set("spark.hadoop.mapreduce.fileoutputcommitter.marksuccessfuljobs","false")