0
我已经读取了一个avro文件到火花RDD中,并且需要将其转换为一个sql数据框。我怎么做。在火花中读取Avro文件
这是我到目前为止所做的。
import org.apache.avro.generic.GenericRecord
import org.apache.avro.mapred.{AvroInputFormat, AvroWrapper}
import org.apache.hadoop.io.NullWritable
val path = "hdfs://dds-nameservice/user/ghagh/"
val avroRDD = sc.hadoopFile[AvroWrapper[GenericRecord], NullWritable, AvroInputFormat[GenericRecord]](path)
当我这样做:
avro.take(1)
我回来
res1: Array[(org.apache.avro.mapred.AvroWrapper[org.apache.avro.generic.GenericRecord], org.apache.hadoop.io.NullWritable)] = Array(({"column1": "value1", "column2": "value2", "column3": value3,...
如何将它转换为一个SparkSQL数据帧?
我使用的Spark 1.6
谁能告诉我,如果有解决这个简单的解决方案?
我已经试过这其中因错误而失败。 org.apache.spark.SparkException:由于阶段失败导致作业中止:阶段2.0中的任务0失败4次,最近失败:阶段2.0中丢失的任务0.3(TID 1599,执行器1):ExecutorLostFailure(执行器1退出正在运行的任务)原因:标记为失败的容器:container_e82_1498595332605_58299_01_000002在主机:localhost.com上。退出状态:50.诊断:容器启动异常。 容器ID:container_e82_1498595332605_58299_01_000002 退出代码:50 – Gayatri