如何使用TEZ将数据插入到Hive ORC表时创建小文件

时间:2017-09-14 15:48:12

标签: hive orc apache-tez

我尝试过几个选项,但我只看到配置设置将小文件合并到大文件中,如下所示,但反之亦然。我正在寻找创建大小为150kb的文件。

set hive.merge.tezfiles=true;
set hive.merge.smallfiles.avgsize=128000;
set hive.merge.size.per.task=128000;

2 个答案:

答案 0 :(得分:0)

您可以尝试设置ORC块大小hive.exec.orc.default.block.size。另外要跳过合并小文件,您需要禁用标志。 set hive.merge.tezfiles=false;您可以参考Hortonworks community thread link以获取有关如何生成文件的更多信息。

答案 1 :(得分:0)

尝试以下设置,这些设置应有助于保留较小的文件:

set hive.merge.tezfiles=true;
set hive.merge.smallfiles.avgsize=128000;
set hive.merge.size.per.task=128000;
set mapreduce.input.fileinputformat.split.minsize=100;
set mapreduce.input.fileinputformat.split.maxsize=128000;
set hive.exec.orc.default.block.size=128000;