Hadoop:我们可以针对不同的数据集使用不同的块大小吗?

时间:2018-06-19 07:46:43

标签: hadoop hdfs bigdata hiveql partition

我们可以针对不同类型的数据集使用不同的块大小吗? 假设我有两个表,一个包含10TB的数据,而另一个表包含10GB的数据。
我可以为这两个块设置不同的块大小,例如前者为256MB,后者为64MB,以提高我的性能。

如果是,那么请建议一种方法来实现这一点。此外,这可以降低到分区级别吗?如果一个分区有更多的数据而另一个分区的数据更少,那么我可以为更大的分区设置更多的块大小?

谢谢: - )

1 个答案:

答案 0 :(得分:0)

如果您使用HIVE / ORC存储数据集,则可以在表定义中覆盖块大小:

CREATE TABLE mytable (mycol string,..)
STORED AS ORC TBLPROPERTIES ("hive.exec.orc.default.block.size"="67108864");

对于分区,我没有看到任何解决方案。