La funzionalità DataprocFileOutputCommitter è una versione migliorata di FileOutputCommitter
open source. it
consente scritture simultanee da parte di job Apache Spark in una posizione di output.
Limitazioni
La funzionalità DataprocFileOutputCommitter
supporta i job Spark eseguiti su
cluster Dataproc Compute Engine creati con
le seguenti versioni dell'immagine:
2.1 immagini versioni 2.1.10 e successive
Versioni immagine 2.0 2.0.62 e successive
Utilizza DataprocFileOutputCommitter
Per utilizzare questa funzionalità:
Crea un cluster Dataproc su Compute Engine utilizzando le versioni dell'immagine
2.1.10
o2.0.62
o successive.Imposta
spark.hadoop.mapreduce.outputcommitter.factory.class=org.apache.hadoop.mapreduce.lib.output.DataprocFileOutputCommitterFactory
espark.hadoop.mapreduce.fileoutputcommitter.marksuccessfuljobs=false
come proprietà job quando invii un job Spark nel cluster.- Esempio di 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 ...
- Esempio di codice:
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")