【问题标题】:Split file during writing在写入期间拆分文件
【发布时间】:2012-06-18 16:07:58
【问题描述】:

大师!

很长一段时间我找不到以下问题的答案:hadoop 如何在写入过程中拆分大文件。 例子: 1) 块大小 64 Mb 2) 文件大小 128 Mb(平面文件,包含文本)。

当我写文件时,它将被分成两部分(文件大小/块大小)。 但是... 可能会发生以下情况 Block1 将在 ... word300 word301 Block 2 将开始 rd302 word303 ... 写case会是

Block1 将结束于 ... word300 word301 Block 2 将开始 word302** word303 ...

或者你可以在写hadoop拆分算法的地方链接。

提前谢谢你!

【问题讨论】:

    标签: hadoop mapreduce hadoop-streaming


    【解决方案1】:

    看起来 this wiki 页面,hadoop InputFormat 将读取 FileSplit 的最后一行超出拆分边界,并且当读取第一个 FileSplit 以外的内容时,它会忽略直到第一个换行符的内容。

    【讨论】:

      【解决方案2】:

      文件将根据字节任意拆分。因此它可能会将其拆分为 word302 之类的内容。

      这不是您通常需要担心的问题,而是系统的设计方式。 MapReduce 作业的InputFormatRecordReader 部分处理在记录边界之间拆分的记录。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-06
        • 1970-01-01
        • 2014-10-22
        • 1970-01-01
        • 1970-01-01
        • 2019-04-30
        • 1970-01-01
        相关资源
        最近更新 更多