Lz4压缩不可拆分

时间:2019-02-27 13:08:52

标签: hadoop lz4

我正在使用lz4压缩并将数据写入配置单元表,该表有20个文件,在HDFS上每个文件都是15G,并且该表的每个文件名都以lz4结尾,例如part-m-00000.lz4

当我从该表中运行select count(1)时,它仅启动20个映射器,这意味着lz4 splittable无效。

据说lz4支持针对文本文件的可拆分表,所以我会问我该怎么做或执行其他步骤来启用此功能。

1 个答案:

答案 0 :(得分:0)

假设您可以控制数据的压缩方式,this codec可能会更接近您的需求,因为它嵌入了可拆分层。它设计用于Hadoop。

如果您无法更改格式,并且将其压缩为没有跳转表的单个流,那么恐怕没有好的解决方案。 lz4默认情况下,CLI会将数据拆分为4 MB的块,但不提供任何跳转表。跳转表使档案易于以随机顺序读取。如果没有它,就必须流传输数据并分发块以进行后续处理。