2016-10-01 143 views
2

我已經運行了674個映射器的映射器,這個映射器配置單元生成了674個.gz文件我想將這些文件合併到30-35個文件中。試圖通過未獲取合併的配置單元格megre mapfilse屬性輸出Hadoop合併文件

回答

6

嘗試使用TEZ執行引擎,然後嘗試使用hive.merge.tezfiles。您可能也想要指定大小。

set hive.execution.engine=tez; -- TEZ execution engine 
set hive.merge.tezfiles=true; -- Notifying that merge step is required 
set hive.merge.smallfiles.avgsize=128000000; --128MB 
set hive.merge.size.per.task=128000000; -- 128MB 

如果你想要去MR引擎然後添加以下設置(我還沒有嘗試過親自)

set hive.merge.mapredfiles=true; -- Notifying that merge step is required 
set hive.merge.smallfiles.avgsize=128000000; --128MB 
set hive.merge.size.per.task=128000000; -- 128MB 

以上設置將催生一個步驟合併的文件和近似大小每個部分文件應該是128MB。

參考: