在 EMR 集群上使用 Apache Spark,我读入了 xml 数据,推断了模式,并将其以 parquet 格式存储在 s3 上。它现在基本上是一个嵌套表。
使用 Spark,我有架构。我现在希望能够创建一个外部表供 Redshift Spectrum 查询。
如何将架构从 Spark 提供的格式转换为 Redshift Spectrum 的 CREATE EXTERNAL TABLE 语句所需的格式?
当我处理多个“外部表”时,手动干扰模式不是一种选择。
我无法找到任何现有工具来执行从 Spark 模式格式到 Redshift Spectrum 外部表格式的转换(请参阅Amazon Nested Table Tutorial)
Spark 模式是一个pyspark.sql.types.StructType
我可以将模式转换schema
为 jsonschema.jsonValue()
并编写一个工具来进行转换,但如果有一个现有的工具可以做到这一点,我更愿意使用它。
有什么想法/建议吗?