在HDFS上合并多个LZO压缩文件

gui*_*ume 10 java compression hadoop mapreduce hdfs

假设我在HDFS上有这个结构:

/dir1
    /dir2
        /Name1_2015/
            file1.lzo
            file2.lzo
            file3.lzo
        /Name2_2015
            file1.lzo
            file2.lzo

    Name1_2015.lzo
Run Code Online (Sandbox Code Playgroud)

我想合并'dir2'中每个目录的每个文件,并将结果追加到/dir1/DirName.lzo中的文件

例如,对于/ dir1/dir2/Name1_2015,我想合并file1.lzo,file2.lzo,file3.lzo并将其附加到/dir1/Name1_2015.lzo

每个文件都是LZO压缩的.

我该怎么做 ?

谢谢

Ven*_*hik 1

您可以尝试将所有单独的 LZO 文件存档到 HAR(Hadoop 存档)中。我认为将所有文件合并到单个 LZO 中会产生开销。