amazon-web-services - 运行完全相同的查询时,Athena 返回不同的结果集
问题描述
当我在同一个数据集(s3 上完全相同的 parquet 文件)上多次运行完全相同的查询时,每次返回的结果集略有不同。有时缺少几行或聚合数据略有偏差等。当然,查询相对复杂,有几个嵌套查询和在分区子集上运行的聚合,但我不明白为什么查询结果会有所不同。是否有我不知道的查询结果一致性类型的设置?
解决方案
拥有数据的示例查询和示例布局会很有帮助。首先想到的是数据不断地附加到 parquet 文件中,但您确认情况并非如此。
如果您有很多分区,则可能是 Athena 尚未加载其中一些分区(自动)。虽然分区可能存在,但 Athena 还需要将这些分区加载到内部 Athena 数据目录中。可能是该数据目录中仍然缺少其中一些分区,因此在运行查询时未使用。结果是您的聚合略有偏差。
您可以尝试以下操作,然后再次运行查询几次,看看结果是否仍然变化:
MSCK REPAIR TABLE table_name;
更多信息可以在这里找到。
推荐阅读
- javascript - 如何以延迟方式调用函数
- r - 根据两列R中的匹配行填充列中的空白
- hazelcast - 是否可以将特定的 Java 依赖项部署到 Hazelcast Cloud 上的节点?
- sql - 创建我们有客户但没有供应商的每个国家/地区的列表
- apache-nifi - Apache NiFi:如何获取登录用户界面的审核日志?
- react-router - 如何让 Rails routes.rb 将多个路径重定向到单个控制器#action?
- selenium - Whether Selenium Grid has public API documentation available?
- c# - 如何在 ASP.NET Core Web API 中添加两个不同的令牌
- mysql - Update large amount of data in SQL database via Airflow
- c# - How can adding certificate to the trusted root certificates