Hadoop分布式文件系统

时间:2012-12-31 03:37:33

标签: hdfs filesplitting

我想修改输入文件分割成块并存储在Hadoop分布式文件系统中的方式。(例如,它根据块大小拆分文件,但我的应用程序需要根据文件内容拆分文件)。  所以我想知道根据HADOOP的块大小属性将文件拆分成块的类。

1 个答案:

答案 0 :(得分:1)

块是HDFS的抽象,而InputSplits是MapReduce的抽象。默认情况下,一个HDFS块对应一个可以修改的InputSplit。

默认情况下,HDFS将块划分为精确的64MB块,也可能跨记录边界分割。在文件输入格式的情况下,从数据块创建InputSplits是由InputFormat决定的。每个InputSplit都将由一个单独的映射器处理。

  

示例它根据块大小拆分文件,但我的应用程序需要根据文件内容拆分文件

根据InputSplits考虑并根据应用程序要求创建新的InputFormat。以下是有关创建新InputFormat的一些教程(123)。