scala - 如何将Avro的GenericData.Record的RDD转换为DataFrame?

标签 scala apache-spark apache-spark-sql avro

也许这个问题看起来有点抽象,在这里是:

val originalAvroSchema : Schema   = // read from a file
val rdd : RDD[GenericData.Record] = // From some streaming source

// Looking for a handy:
val df: DataFrame   = rdd.toDF(schema)

我探索了 spark-avro ,但它仅支持从文件读取,而不支持从现有的RDD读取。

最佳答案

import com.databricks.spark.avro._

val sqlContext = new SQLContext(sc)
val rdd : RDD[MyAvroRecord] = ...
val df = rdd.toAvroDF(sqlContext)

关于scala - 如何将Avro的GenericData.Record的RDD转换为DataFrame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36291772/

相关文章:

java - 获取 sbt 插件时为 “PKIX path building failed” 和 “unable to find valid certification path to requested target”

java - Scala 和 Java 数据结构

string - Scala,函数的字符串表示

python - 更改rdd中的数据类型

python - Pyspark:根据两个RDD中两列的条件计算两个对应列的总和

apache-spark - 从不同的 Spark 版本访问 spark-shell

windows - 以管理员Scala身份运行cmd

statistics - 是否可以使用 Spark Streaming 实时更新值?

python-3.x - 如何在不使用Pyspark中的collect()方法的情况下将pyspark.rdd.PipelinedRDD转换为数据框?

apache-spark - spark 窗口函数 VS group by 性能问题