首页 > 解决方案 > 访问 Athena 中正在更新的表

问题描述

发出msck repair table语句时,表在 udpate 期间是否仍可用于查询?

我之所以这么问,是因为我试图找出一个相对较大的 S3 配置单元表的最佳更新计划,该表用于驱动 QuickSight 中的一些报告。发出此命令会破坏同时运行基于此表的 QuickSight 报告的任何人吗?

标签: amazon-athena

解决方案


是的,该表在您运行时可用于运行查询MSCK REPAIR TABLE,这是一个后台进程。但是,在该命令运行时运行的查询将看到不同的分区,因为命令发现的分区将在找到时添加。

请注意,运行MSCK REPAIR TABLE是一个非常低效的过程,有很多分区它会运行很长时间,而且它不是增量的。这对查询性能无关紧要,但如果现在需要很长时间,它只会花费越来越长的时间,并且可能不是一个可行的长期策略。StackOverflow 上还有其他一些关于它的问题,您可以阅读这些问题以找到使表保持最新的其他策略。


推荐阅读