我试着在这里/网上找到类似的问题,但没有找到。
我有Athena指向Amazon S3中的一个文件夹,该文件夹本身包含文件夹/分区,每个文件夹/分区内部都有一个。tsv(例如s3://my_bucket/partition/file.tsv
)。Athena能够收集桶中大多数文件的结果,但不能收集其中少数文件的结果。
我已经运行了修复代码(MSCK REPAIR TABLE
),并检查了glue以确保它可以看到分区(它是)。我还访问了亚马逊知识中心(https://aws.amazon.com/premiumsupport/knowledge-center/athena-empty-results/)。
事实证明,表的列(从API中提取)对于不能工作的文件的顺序是不同的。在不同的字段上运行查询提供了结果。解决方案是在从API收集数据后强制列的顺序保持一致。