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  

  • 相关阅读:
    codevs2034 01串2
    codevs2622数字序列( 连续子序列最大和O(n)算法)
    codevs3008加工生产调度(Johnson算法)
    codevs1955光纤通信(并查集)
    codevs4203山区建小学
    codevs2618核电站问题
    常用端口
    ntp时间同步服务器
    date linux系统校正时间
    用户切换
  • 原文地址:https://www.cnblogs.com/wt7018/p/13611059.html
Copyright © 2011-2022 走看看