问题在标题中--什么时候使用压缩是好的?所谓好,我是指更快的处理速度。
我的流水线由多个MR作业组成,中间结果存储在序列文件中。
数据是数值时间序列。此外,恰好一个作业的输出与输入的大小相同。因此,传输/存储的数据可能很大。
我想知道压缩是否可以加快速度,或者压缩/解压缩数据需要更多时间?
发布于 2016-02-16 07:04:47
使用快速编解码器(read snappy)对中间数据进行压缩几乎总是一个好主意。即使你的数据是不可压缩的,你也不会受到太多的惩罚。
发布于 2016-02-16 20:24:10
压缩不会影响您的工作,只要您知道您正在尝试实现什么,确保您的压缩数据是可拆分的。我发现bzip2格式在压缩率和CPU使用率方面更方便,但在你的数据集上做不同格式的内部测试更好。
压缩有两个主要的好处。
1)运行mapreduce作业时使用较少的磁盘空间(压缩的间歇输出和最终输出)。2)提高作业性能,因为我们在集群节点之间的混洗阶段发送压缩数据。
希望这能有所帮助。
https://stackoverflow.com/questions/35419267
复制相似问题