Hadoop 理解Map-Reduce
所以这一直让我困惑。我不确定map reduce到底是如何工作的,我似乎迷失在了一系列事件中 我的理解是:Hadoop 理解Map-Reduce,hadoop,mapreduce,Hadoop,Mapreduce,所以这一直让我困惑。我不确定map reduce到底是如何工作的,我似乎迷失在了一系列事件中 我的理解是: Master将文件分块并按(K1,V1)的格式将其交给映射者 映射者将获取文件并执行映射(K1,V1)->(K2,V2),然后将这些数据输出到各个文件中 这就是我迷路的地方。 那么这些单独的文件是如何合并的呢?如果在每个文件中重复键会怎样 这是谁干的?是主人吗?如果所有的文件都在这一步进入主控,那么它们不会成为一个巨大的瓶颈吗?是否所有内容都合并到一个文件中?现在文件是否重新分块并交给还原
3.3。框架不检查减速器输出,也不以任何方式组合减速器输出。无论您有多少个reducer任务(r),这就是您将获得多少个包含K3、V3记录的输出文件。如果需要再次组合,请对该输出运行另一个作业 在阅读此答案之前,请花些时间阅读有关合并排序(分治方法)的内容 下面是框架在幕后发生的一整套动作
- FileInputFormat决定如何将文件分割为多个分割(分割=1个或多个hdfs块,具体取决于分割大小)
- 如果启用了组合器,则在保存到磁盘之前,对于给定的键,值将根据组合器逻辑进行合并(基本上与reduce相同),数据将被排序并保存到磁盘上
{
k1->v1
k1->v2
K2->v3
}