我有大约 14000 个小的 .gz 文件(从 90kb 到 4mb),它们都加载到 HDFS 中的同一目录中。
因此,它们每个的大小都与 HDFS 的标准 64mb 或 128mb 块大小相距甚远,这在运行处理这些文件的 MR 作业时可能会导致严重的问题(“小文件问题”,请参阅 cloudera 的这篇博文) .
上述博客文章包含许多解决此问题的方法,主要涉及编写 MapReduce 作业或使用 Hadoop 存档 (HAR)。
但是,我想从源头解决问题并将小文件合并为 64mb 或 128mb .gz 文件,然后将其直接输入 HDFS。
最简单的方法是什么?