首页 > 解决方案 > 在创建 Glue 分区时确保数据准备好被查询的好方法?

问题描述

我们有每隔几分钟按计划运行的查询,它们连接几个不同的粘合表(通过 Athena),然后再得出一些结果。对于有问题的表,我们设置了 Glue Crawlers,并根据 snapshot_date 和其他几列进行分区。

在查询中,我们获取最新的 snapshot_date 并仅使用来自该 snapshot_date 的数据进行查询。S3 中的数据每天会更新几次并放入正确的文件夹中,但有时,如果我们尝试在 S3 中的数据更新时正确查询数据,我们最终会得到空结果,因为在 Glue 仍在设置数据时尝试访问新的 snapshot_date 分区的查询(?)

在我们开始查询之前,有没有一种内置的方法来确保我们的粘合分区已经准备好?到目前为止,我们考虑在我们的查询中构建人工时间“缓冲区”,大约在我们期望写入 snapshot_date 分区数据和完成胶水更新时,但我知道这真的很脆弱,并且取决于确切的时间。

标签: aws-glue-data-catalog

解决方案


推荐阅读