在将avro文件读入spark data frame (1.3.0版)时,我看到人们通过代码创建StructType。
但我不想将模式硬编码到我的代码中。相反,我想读取一个包含模式的外部"AVSC“文件并生成StructType。
这有可能吗?如果是,是如何实现的?
发布于 2018-01-23 21:11:13
我认为这对你来说是可行的:
val sqlType = SchemaConverters.toSqlType(yourSchema).dataType.asInstanceOf[StructType]发布于 2016-03-18 05:56:27
在databricks提供的git hub中似乎有一个spark-avro项目。https://github.com/databricks/spark-avro
使用此项目,您无需指定任何模式即可读取avro文件。支持的Spark版本是sparkVersion := "1.4.1“
val sqlContext = new SQLContext(sc)
val df = sqlContext.read
.format("com.databricks.spark.avro")
.load("src/test/resources/episodes.avro")
df.filter("doctor > 5").write
.format("com.databricks.spark.avro")
.save("/tmp/output")https://stackoverflow.com/questions/36063986
复制相似问题