gpt4 book ai didi

hadoop - 为什么 mapreduce 将压缩文件拆分为输入拆分?

转载 作者:可可西里 更新时间:2023-11-01 15:15:06 25 4
gpt4 key购买 nike

所以根据我的理解,当 hdfs 存储一个 block 大小为 64 MB 的 bzip2 压缩的 1GB 文件时,该文件将存储为 16 个不同的 block 。如果我想在这个压缩文件上运行 map-reduce 作业,map reduce 会尝试再次拆分文件。为什么mapreduce不自动使用hdfs中的16 block ,而是再次拆分文件?

最佳答案

我想我明白你的困惑来自哪里。我会尝试清理它。

HDFS 将您的文件分割成 block 。这些是文件的物理分区。

MapReduce 在这些 block 之上创建逻辑 拆分。这些拆分是根据许多参数定义的,其中 block 边界和位置是一个重要因素。您可以将最小拆分大小设置为 128MB,在这种情况下,每个拆分可能恰好是两个 64MB 的 block 。

所有这些都与您的 bzip2 压缩无关。如果您使用了 gzip 压缩,则每个拆分将是一个完整的文件,因为 gzip 不是可拆分压缩。

关于hadoop - 为什么 mapreduce 将压缩文件拆分为输入拆分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24921379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com