我在一个包含超过28K分区的hive表上运行MSCK REPAIR TABLE
表名,我们将每隔10分钟收到一个分区。
当我们每隔10分钟在这张桌子上运行MSCK REPAIR TABLE
时,如果时间过长就需要花费很多时间
有人可以建议为什么要花更多时间吗? (即超过5-10分钟)
提前致谢。
Hive版本:1.1.0
答案 0 :(得分:1)
这是一种非常糟糕的做法
无论目录是否已映射到分区,MSCK REPAIR
仍需要获取所有目录的列表以及所有分区的列表并进行比较。
相反,每次添加目录时都应使用alter table ... add partition ...
添加分区。