Spark'deyim, bir Avro dosyasından RDD sahibiyim. Artık o RDD bazı dönüşümler yapmak ve bir Avro dosyası olarak geri kaydetmek istiyorum:Spark: Avro dosyasına yazma
val job = new Job(new Configuration())
AvroJob.setOutputKeySchema(job, getOutputSchema(inputSchema))
rdd.map(elem => (new SparkAvroKey(doTransformation(elem._1)), elem._2))
.saveAsNewAPIHadoopFile(outputPath,
classOf[AvroKey[GenericRecord]],
classOf[org.apache.hadoop.io.NullWritable],
classOf[AvroKeyOutputFormat[GenericRecord]],
job.getConfiguration)
bu Spark çalışan Şema $ recordSchema seri hale getirilebilir değil şikayet ediyor.
.map çağrısından rahatsızlık duyarsam (ve sadece rdd.saveAsNewAPIHadoopFile'ım varsa), çağrı başarılı olur.
Burada yanlış olan ne yapıyorum?
Herhangi bir fikrin var mı?
İstisna yığını izlemesini sağlayabilir misiniz? Spark, Hadoop ve Avro versiyon numaraları da faydalı olabilir. – Wildfire
Lütfen naifliğimi bağışla. Burada işin ne olduğunu sorabilir miyim? Bir haritayı küçültmek gibi görünüyor mu? Kıvılcımı yazmak için kıvılcım kullanırsak, neden bir haritayı neden azaltmalıyız? –