zoukankan      html  css  js  c++  java
  • MapReduce提供的输入输出格式

    输入格式   key value
    TextInputFormat 默认格式,读取文件的行 行的字节偏移量 行的内容
    KeyValueInputFormat 把行解析为键值对 第一个tab字符前的所有字符 行剩下的内容
    SequenceFileInputFormat Hadoop定义的高性能二进制格式 自定义 自定义

    说明:

    TextInputFormat:默认的输入格式,输入文件每一行作为单独的一个记录,但不做解析处理。这对那些没有被格式化的数据或是基于行的记录来说是很有用的,比如日志文件。

    KeyValueInputFormat:也是把输入文件每一行作为单独的一个记录。然而不同的是TextInputFormat把整个文件行当做值数据,KeyValueInputFormat则是通过搜寻tab字符来把行拆分为键值对。这在把一个MapReduce的作业输出作为下一个作业的输入时显得特别有用,因为默认输出格式(下面有更详细的描述)正是按KeyValueInputFormat格式输出数据。

    SequenceFileInputFormat,它会读取特殊的特定于Hadoop的二进制文件,这些文件包含了很多能让Hadoop的mapper快速读取数据的特性。Sequence文件是块压缩的并提供了对几种数据类型(不仅仅是文本类型)直接的序列化与反序列化操作。Squence文件可以作为MapReduce任务的输出数据,并且用它做一个MapReduce作业到另一个作业的中间数据是很高效的

    用法:

    job.setInputFormatClass(SequenceFileInputFormat.class);

    输出格式类似。

  • 相关阅读:
    (转)Java 网络IO编程总结(BIO、NIO、AIO均含完整实例代码)
    (转)[疯狂Java]NIO:Channel的map映射
    AVL 树
    二叉查找树
    IE双击打不开解决办法
    CentOS安装mysql、JDK、Tomcat部署环境
    Tomcat安装与配置
    LoadRunner监控Centos和Ubuntu资源之服务器配置
    Fiddler
    Windows server 2008常用优化设置
  • 原文地址:https://www.cnblogs.com/wuzhenquan/p/3618527.html
Copyright © 2011-2022 走看看