zoukankan      html  css  js  c++  java
  • FileInputFormat实现类

    一、TextInputFormat

    1、TextInputFormat是默认的FileInputFormat的实现类。
    2、按行读取每条记录。
    3、键:存储该行在整个文件中起始字节偏移量,LongwWritable类型
    4、值:这行的内容,不包含任何行终止符(换行符和回车符),Text类型

    注意:键的值: 该行第一个字节,在整个文件中的偏移量

     二、KeyValueTextInputFormat

    1、按行读取

    2、被分隔符分为 key, value,第一个是 key,后面是 value

    3、分隔符通过驱动类设置

    conf.set(KeyValueLineRecordReader.KEY_VALUE_SEPERATOR, " ");

    4、默认的分隔符是:

    5、key的数据类型:Text,value的数据类型:Text

    三、NLineInputFormat

    1、mapTask的数量,不是按照Block分,而是按照 文件行数/N, N为行数,若有余数,则加一

    2、key的数据类型:LongWritable Value的数据类型:Text

    注意:键和值与TextInputFormat一致

    四、CombineTextInputFormat

    处理小文件,前面已有

    五、总结分析

    类型          切片      key        value

    TextInputFile            Block                    LongWritable              Text

    KeyValueTextInputFile  Block                    Text          Text

    NLineInputFile         行切片                  LongWritable           Text

    CombineTextInputFile     切片过程         LongWritable    Text

    自定义InputFile       Block               Text                          BytesWritable  

  • 相关阅读:
    【HDOJ】2267 How Many People Can Survive
    【HDOJ】2268 How To Use The Car
    【HDOJ】2266 How Many Equations Can You Find
    【POJ】2278 DNA Sequence
    【ZOJ】3430 Detect the Virus
    【HDOJ】2896 病毒侵袭
    求奇数的乘积
    平方和与立方和
    求数列的和
    水仙花数
  • 原文地址:https://www.cnblogs.com/wt7018/p/13611059.html
Copyright © 2011-2022 走看看