镶木地板格式不保留结构内字段的顺序

Som*_*tra 5 json parquet apache-spark-sql

使用 Spark sql 将 json 转换为 Parquet 格式,类似这样

Scala> val sqlContext = new org.apache.spark.sql.SQLContext(sc)
Scala> val employee = sqlContext.read.json(“emplaoyee”)
Scala> employee.write.parquet(“employee.parquet”)
Run Code Online (Sandbox Code Playgroud)

我的员工 json 看起来像这样 {"id":1,"name":"ABC","address":{"street":"s1","zipcode":123,"state":"KA"}}

我正在尝试使用 Amazon Athena 读取 Parquet 文件。Athena中的表结构是这样的 创建外部表employee {id string, name string, address struct

问题是 Parquet 文件中地址结构内三个字段的顺序没有保留,因此我无法将它加载到上面定义的 Athena 模式中。

任何帮助深表感谢。