【问题标题】:How does Hadoop split files without losing data integrity?Hadoop 如何在不丢失数据完整性的情况下拆分文件?
【发布时间】:2015-05-30 02:13:51
【问题描述】:

我们都知道,如果输入文件很大,它会被分割成相等大小的分割(默认大小为 64 MB)。假设我有一个 104 MB 大的 .txt 文件。理论上,这个文件被分成 2 个部分(一个是 64 MB 大,另一个是 40 MB 大)。分裂可能发生在单词的中间吗?例如,“Hadoop”,“Ha”将是第一次拆分的结束,“doop”将是第二次拆分的开始。如果发生这种情况,我们如何才能正确执行 WordCount 问题?

【问题讨论】:

    标签: hadoop mapreduce hdfs


    【解决方案1】:

    该逻辑封装在为映射器配置的 InputFormat 中。 InputFormat 有不同的子类,您可以选择特定于使用 Mapper 使用的文件类型的子类。例如,TextInputFormat 类在换行符上换行。在拆分的开头或结尾可能有部分行,但逻辑会识别这些情况并仍然将完整的行返回给一个映射器。

    【讨论】:

    • 没错。 This 非常清楚地解释了这个问题。
    猜你喜欢
    • 2015-08-31
    • 2022-07-25
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 2017-04-07
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    相关资源
    最近更新 更多