gpt4 book ai didi

尽管 mapred.output.compress=true,hadoop 流仍会生成未压缩的文件

转载 作者:可可西里 更新时间:2023-11-01 17:01:20 25 4
gpt4 key购买 nike

我像这样运行一个 hadoop 流作业:

hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-streaming.jar 
-Dmapred.reduce.tasks=16
-Dmapred.output.compres=true
-Dmapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec
-input foo
-output bar
-mapper "python zot.py"
-reducer /bin/cat

我确实在输出目录中得到了 16 个包含正确数据的文件,但是这些文件没有被压缩:

$ hadoop fs -get bar/part-00012
$ file part-00012
part-00012: ASCII text, with very long lines
  1. 为什么 part-00012 没有压缩?
  2. 如何将我的数据集拆分为少量(比如 16 个)gzip 压缩文件?

附言。另见“Using gzip as a reducer produces corrupt data

PPS。这是vw .

PPPS。我想我可以做 hadoop fs -get, gzip, hadoop fs -put, hadoop fs -rm 16次,但这似乎是一种非常非 hadoopic 的方式。

最佳答案

您的 mapred.output.compres 参数中有错字。如果您查看自己的工作经历,我敢打赌它已关闭。

此外,您还可以避免将 reduce-stage 放在一起,因为那只是整理文件。除非您特别需要 16 个零件文件,否则请尝试将其保留为仅贴图。

    hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-streaming.jar 
-Dmapred.reduce.tasks=0
-Dmapred.output.compress=true
-Dmapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec
-input foo
-output bar
-mapper "python zot.py"

关于尽管 mapred.output.compress=true,hadoop 流仍会生成未压缩的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23767799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com