分享

关于mapreduce的map端

chenyui 2019-4-21 17:47:05 发表于 疑问解答 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 4 5156
各位大佬,
有问题请教:map端溢写的小文件最后为什么要merge成一个大文件???

已有(4)人评论

跳转到指定楼层
s060403072 发表于 2019-4-21 22:16:18

其实应该map端是对数据片split的处理,处理之后要分reduce的不同分区。
map过程会产生很多的文件,这个只是临时文件。
map产生的文件会被reduce拉取,拉取后,reduce做统计。然后输出
回复

使用道具 举报

chenyui 发表于 2019-4-22 09:25:23
s060403072 发表于 2019-4-21 22:16
其实应该map端是对数据片split的处理,处理之后要分reduce的不同分区。
map过程会产生很多的文件,这个 ...

这个我了解,就是为什么要merge所有的小文件为一个大文件?
是因为reduce从map端的每个小文件拉取它需要的数据会多次打开/关闭文件吗?没有只从一个大文件拉取方便的原因?
回复

使用道具 举报

fly2015 发表于 2019-4-22 11:09:56
chenyui 发表于 2019-4-22 09:25
这个我了解,就是为什么要merge所有的小文件为一个大文件?
是因为reduce从map端的每个小文件拉取它需要 ...

基本上是这个意思,过多小文件 没有大文件 IO效率高

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条