zoukankan      html  css  js  c++  java
  • SequenceFile

    org.apache.hadoop.io包里的SequenceFile类提供了高效的二进制文件格式,它经常用于MapReduce作业的输出。尤其是当作业的输出被当做另一个作业的输入时。SequenceFile有如下几个优点:

     SequenceFile是hadoop的一种文件格式,存储key-value对,key的类型要实现WriteableComparable,value的类型要实现writable

    作为二进制文件,它们本质上比文本文件更为紧凑

    ‹ SequenceFile支持不同层面的可选压缩,也就是说,可以对每条记录或整个split进行压缩

    ‹ 该文件可被并行切分和处理

    最后一个特性很重要,大多数二进制格式——尤其是压缩或加密文件——是无法切分的,必须以单独的线性数据流的形式读取。使用这种无法切分的文件作为MapReduce作业的输入,意味着需要使用一个mapper处理整个文件,造成潜在的巨大的性能损失。在此情况下,最好使用可切分的格式,如SequenceFile,或者在无法避免接收其它格式文件的情况下,执行预处理步骤将其转换成可切分的格式。这需要权衡利弊,因为文件格式转换也需要一定的时间,但在很多情况下,尤其是处理复杂的map任务时,使用可切分格式所节省的时间将超过文件格式转换的时间。

  • 相关阅读:
    使用C实现一个函数内两个阿拉伯数字的交换
    使用C比较两个字符串是否相等
    C打印99乘法表
    C定时在控制台输出时分秒
    C实现猜数字
    OpenCV实现开操作、闭操作、形态学梯度、顶帽、黑帽
    OpenCV实现膨胀和腐蚀
    metaclass of python
    Django设计哲学
    using NGINX+uWSGI to deploy django project
  • 原文地址:https://www.cnblogs.com/baoendemao/p/3804759.html
Copyright © 2011-2022 走看看