如何在Hive中获取一个文件

时间:2018-08-27 14:08:31

标签: hive

我尝试了Hive流程, 从中产生单词频率等级 句子, 我想输出的不是多个文件,而是 一个文件。

我在这个网站上搜索了类似的问题, 我发现mapred.reduce.tasks = 1, 但它不会生成一个文件,而是生成50个文件。

我尝试的过程有50个输入文件, 它们都是gzip文件。

如何获取一个合并文件? 50个输入文件太大,我想 原因可能是某种限制。

2 个答案:

答案 0 :(得分:0)

在工作中使用订购依据子句和某些字段。

因此,配置单元将强制只运行一个reducer,结果您将最终在HDFS中创建一个文件。

hive> Insert into default.target 
         Select * from default.source
      order by id;

有关order by子句的更多详细信息,请参考thisthis链接。

答案 1 :(得分:0)

感谢您的友好回答, 你真的救了我 我正在尝试订购 但是要花很多时间 我在等它。 我要做的就是得到一个文件 使输出文件成为输入 下一步, 我还将尝试根据建议,简单地整理来自reducer输出的所有文件, 如果我愿意的话,我担心文件是唯一的,并且文件之间没有相同的词,并且担心是否是由多个gzip文件组成的普通gzip文件。