所以这一直困扰着我。我不确定map-reduce的工作方式,我似乎迷失在事件的确切链条中。了解地图 - 减少
我的理解:
- 主大块的文件和双手它们映射器为(K1,V1)
- 映射器将文件并执行一个Map(K1,V1) - >(K2,V2 )并将这些数据输出到单个文件中。
- 这是我失去的地方。
- 那么这些单独的文件得到组合一些如何?如果在每个文件中重复键,该怎么办?
- 这是什么组合?它是主人吗?如果所有文件在这一步都进入了Master,那么他们是否会成为一个巨大的瓶颈?它是否被合并为一个文件?这些文件现在是否被重新分割并递交给减速器?
- 或者,如果所有文件直接转到减速器,那么在流程结束时(K3,V3)文件中的重复K3会发生什么情况?它们是如何组合的?是否有另一个地图缩小阶段?如果是这样,我们需要创建新的操作:地图(K3,V3) - >(K4,V4),降低(K4,V4) - >(K3,V3)
我想总之,我只是不知道如何重新组合正确的文件,并导致我的地图 - 减少逻辑失败。