使用嵌套 s3 文件夹中的分区 Parquet 文件时 AWS GLUE 作业失败

AWS GLUE job failure working with partitioned Parquet files in nested s3 folders

当 运行 对分区镶木地板文件进行 GLUE 作业时,我收到以下错误 无法推断 Parquet 的架构。必须手动指定

我已经设置了我的爬虫并成功获取了我的镶木地板文件的架构。我可以在 Athena 中查看数据。我已经在我的目标 Redshift 上手动创建了架构。

如果我的所有数据都在一个文件夹中,我可以通过 GLUE 将文件加载到 Redshift 中。 但是当我指向一个有嵌套文件夹的文件夹时,例如文件夹 X - 有 04 和 05 - GLUE 作业失败并显示消息 无法推断 Parquet 的架构。必须手动指定

如果我将所有这些文件都放在同一个文件夹中,这很奇怪吗?

我在这里找到了解决方案 - 这对我有用

它是 ETL 胶水作业的 scala 版本

如果您直接指向分区文件夹,则分区文件夹将不再是 table 架构中的列。最好使用谓词下推 - https://aws.amazon.com/blogs/big-data/work-with-partitioned-data-in-aws-glue/ 同时指向顶级文件夹。