我有一大堆来自客户的数据文件,都是gzip文件。我希望他们在.bzip2,因为这是分裂的,更适合我前面的激烈分析。
充分披露:我使用的是hive,一般来说还没有做过比hadoop更基本的工作。
我使用管道命令的简单尝试似乎可行,但它使用主节点的单一cpu进行操作,将在2017年完成12 TB的转换。。。
hadoop fs -cat /rawdata/mcube/MarketingCube.csv.gz | gzip -dc | bzip2 > cube.bz2
感谢任何关于如何使这成为一个mapreduce工作的提示,这样我就可以为我将在本周末反复访问的所有文件做这个(一次)。谢谢。
1条答案
按热度按时间rxztt3cl1#
你能做的就是使用
PailFile
格式https://github.com/nathanmarz/dfs-datastores 将gzip文件存储到适合hdfs块大小的较小块中。这样,即使文件是gzip文件,您的下一个作业(hive或其他)也可以在不同的拆分上并行化。