草庐IT

mod_gzip

全部标签

multithreading - Hadoop Zlib 与 JDK Gzip 性能对比

我正在对单线程压缩编解码器进行一些基准测试,我看到Zlib的性能似乎明显高于您对单线程的预期。我使用org.apache.hadoop.io.compress.zlib.ZlibCompressor来实现Zlib压缩器,使用java.util.zip.Deflate来实现Gzip来与.ZLib压缩器(包装器)是否以某种方式在Hadoop中以多线程方式提供,也许是通过JNI接口(interface)?Zlib:importorg.apache.hadoop.io.compress.zlib.*;protectedfinalzlibCompressor=newZlibCompressor(

hadoop - 当 parquet 使用 Snappy 算法而不是 gzip 时,将 parquet 数据写入 hive 的 spark 作业卡在了最后一个任务中

我正在将一个Parquet文件从DataFrame写入Hive。当我使用snappy作为parquet压缩算法时,我可以看到所有任务,但1个任务在写作阶段迅速完成(例如30/31)。由于大量的gc进程,最后一项任务需要很长时间才能完成。当我使用gzip作为parquet压缩算法时,一切都会正常。我想知道两种压缩算法有什么不同。 最佳答案 gzip自然受到Hadoop的支持。gzip基于DEFLATE算法,它结合了LZ77和霍夫曼编码。GZIP压缩比Snappy使用更多CPU资源,但提供更高的压缩率。GZip通常是冷数据的好选择,不经

xml - Mahout 的 XmlInputFormat 是否可以在不重写的情况下处理 gzip 压缩文件?

Mahout的XmlInputFormat能否在不覆盖其任何方法的情况下处理gzip压缩数据?我一直在尝试解析经过gzip压缩的维基百科xml数据,但到目前为止都没有成功。我听说Hadoop能够自动处理gzip文件,但我现在假设它包含在TextInputFormat类中或特定于其他输入格式,并且没有内置到Mahout的输入格式中。但也许我错过了什么。注意:从那以后我就能够解析xml,但我一直没能找到明确的答案,我很惊讶我这么难找到答案。希望更聪明的人可以启发我和其他人。 最佳答案 根据这个{code}没有处理编解码器,没有覆盖我认为

hadoop - 在 Hadoop 中使用 MultipleOutputs 时 GZIP 文件末尾损坏

我正在压缩HadoopMR作业的输出:conf.setOutputFormat(TextOutputFormat.class);TextOutputFormat.setCompressOutput(conf,true);TextOutputFormat.setOutputCompressorClass(conf,GzipCodec.class);我正在使用MultipleOutputs,例如:MultipleOutputs.addMultiNamedOutput(conf,"a",TextOutputFormat.class,Text.class,Text.class);Multipl

hadoop - 您可以将 s3distcp 与 gzip 压缩输入一起使用吗?

我正在尝试使用s3distcp来编译许多小的gzip文件,不幸的是,这些文件没有以gz扩展名结尾。s3distcp有一个可用于压缩输出的outputCodec参数,但没有相应的inputCodec。我正在尝试将--jobconf与hadoop流调用一起使用,但它似乎没有做任何事情(输出仍然是压缩的)。我使用的命令是hadoopjarlib/emr-s3distcp-1.0.jar-Dstream.recordreader.compression=gzip\--srcs3://inputfolder--desthdfs:///data任何想法可能会发生什么?我正在运行AWSEMRAMI-

optimization - 为 Hadoop 使用 GZip 输入文件时如何优化 S3 的读取性能

在我的Hadoop流作业的第一步,我的性能非常糟糕:在我看来,映射器从S3读取大约40KB/s-50KB/s。从S3读取约100MB的数据需要一个多小时!数据的存储方式:S3存储桶中有数千个~5-10KBGZip文件。我最近解压了一个100MB样本数据集的所有文件,并将其作为单个GZip文件上传到同一个S3存储桶中,我的任务在3分钟内完成(对比之前的1小时运行)受到鼓舞,我解压了一个2GB样本数据集的所有文件,并将其作为单个GZip文件上传到同一个S3存储桶中,我的任务再次花费了1个多小时:之后我终止了任务.我还没有玩过mapred.min.split.size和mapred.max.

java - 在 hadoop 中对没有 .gz 扩展名的文件使用 gzip 输入编解码器

我正在对一堆gzip压缩的输入文件运行Hadoop作业。Hadoop应该很容易处理这个...mapreduceinjava-gzipinputfiles不幸的是,在我的例子中,输入文件没有.gz扩展名。我正在使用CombineTextInputFormatClass,如果我将它指向非gzip文件,它可以很好地运行我的工作,但如果我将它指向gzip文件,我基本上只会得到一堆垃圾。我已经尝试搜索了很长一段时间,但我唯一找到的是其他人问我同样的问题,但没有答案...HowtoforceHadooptounzipinputsregadlessoftheirextension?有人有什么东西吗?

hadoop - 处理 hadoop/hive 中损坏的 gzip 文件

我在HDFS上有很多包含大量文本文件的tar.gz文件的日常文件夹。其中一些tar.gz被发现已损坏,并导致hive/mapreduce作业在处理这些文件时因“流的意外结束”而崩溃。我确定了其中的一些并使用tar-zxvf测试了它们。他们确实以错误退出,但在此之前仍然提取了相当数量的文件。当tar/gz文件损坏时,有没有办法阻止hive/mapreduce作业崩溃?我已经测试了一些错误跳过和容错参数,例如mapred.skip.attempts.to.start.skipping,mapred.skip.map.max.skip.records,mapred.skip.mode.ena

hadoop - 为什么 gzip 不支持拆分

从《Hadoop:TheDefinitiveGuide》一书中得到一段话,如下:“放气将数据存储为一系列压缩block。问题是每个block的开始不以任何允许读者位于任意位置的方式进行区分指向流中前进到下一个block的开头,从而同步本身随流。因此,gzip不支持拆分。”我的问题是我无法理解作者解释为什么gzip不支持拆分的原因。有人可以给我更详细的解释吗?据我了解,如果将大文件拆分为16个block。当一个mapper开始读取一个block时,此时可能会发生2种情况:映射器不能阻塞或者它可以读取它然后处理它但不知道将结果放到整个流的哪里上述情况是会发生还是不会发生还有其他逻辑?

database - 将 GZIP HDFS 数据复制到 vertica

我想将HDFS(gzip压缩)数据复制到Vetica。我正在使用以下命令。但它不起作用COPYpix001SOURCEHdfs(url='http://hadoopnemenode.com:50070/webhdfs/v1/bq-upload/pix/m=03/d=01/03-01.txt.gz',username='xyz')GZIPDELIMITERE'\t';谁知道更好的方法谢谢 最佳答案 是的,有GZIP支持,只需要编译GZIP库[VerticaGuys终于帮了我:)]步骤如下:#cd/opt/vertica/sdk/exa