从 org.apache.spark.sql.types.StructType 生成 AvroSchema
Posted
技术标签:
【中文标题】从 org.apache.spark.sql.types.StructType 生成 AvroSchema【英文标题】:Generate AvroSchema From org.apache.spark.sql.types.StructType 【发布时间】:2018-04-06 09:51:35 【问题描述】:我有一个从 Spark SQL JDBC 查询获得的 DataSet<Row>
结果集。
我可以使用dataset.write.parquet(path);
将其保存到文件系统中,但我也希望为其他目的获取此记录集的 avro 架构。
我知道有一个dataset.schema()
方法返回org.apache.spark.sql.types.StructType
。
我想知道的是,如何将这个StructType
转换为AvroSchema
?
感谢任何指针。
【问题讨论】:
【参考方案1】:您可以遍历 sql 模式并执行类型匹配或使用包,例如来自数据块的spark-avro。这应该是您需要的帽子: Databricks SchemaConverters 查看测试以了解示例用法。
【讨论】:
以上是关于从 org.apache.spark.sql.types.StructType 生成 AvroSchema的主要内容,如果未能解决你的问题,请参考以下文章