确定Hive表中的桶数

时间:2014-05-07 23:54:37

标签: hadoop hive

我对要使用的存储桶数量有疑问。我了解存储的用途以及它如何对SMB连接和采样产生积极影响。但是,如果数据量呈指数增长呢?

让我们说看初始数据量,我决定使用4个桶并按天划分。当我插入到这个表中时,它会在某个时刻需要4个reducers(插入查询中的最后一个作业)。这可以。但是我们可以说,对于某些分区来说,数据量突然大量涌现。它仍然需要4个不是最佳的减速器,并且它也可能因OOM而失效。

我可以决定最初使用更多的存储桶,但是当我达到高容量时会开始创建太多的小文件,因为每个存储桶都会进入文件。

是否可以为存储桶值设置多个文件?

感谢您的投入。

ķ

1 个答案:

答案 0 :(得分:0)

专注于'您的数据量突然激增了一些分区',您可以考虑使用list bucketing,它允许您将具有低容量的块状列值放入一个目录。