博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop上路_12-MapReduce流程演示
阅读量:6191 次
发布时间:2019-06-21

本文共 827 字,大约阅读时间需要 2 分钟。

hot3.png

    MapReduce是单个jobstracker和多个tasktracker的组合。一般jobstrackerHDFS中的namenode在同一个节点,也可配置为单独节点;tasktrackerdatanode必须是同一个节点。jobstracker是整个MapReduce系统的主控节点。

1. jobstracker节点-Master节点: 

    (1)负责调度构成一个作业的全部任务,将之分配到不同的从属节点上。

    (2)通过心跳机制监控从属节点运行状况。一旦有意外,会立刻将任务转移。

2. tasktracker节点-Slave节点: 

    (1)负责执行主控节点分配的任务。

    (2tasktracker datanode 是同一个节点,以实现移动运算达到高效性。

3. MapReduce分布式运算工作流程:

    我们按照WordCount的例子来讲解: 

        (1)首先,jobstracker按照block块数量划分出tasktracker,每个task对应一个datanode
        (2)然后,全部block块读取完毕,抽象出完整文件,再将文件分片,分片大小默认是和Block块相同的。
        (3)之后,每个文件片对应一个map方法,map中执行K1V1遍历,输出K2V2
        (4)接着,由MapReduce模型执行多个shuffle操作,归并数据。输出K2[V2]
        (5)最后,每个shuffle结果输入一个reduce方法,按照我们的逻辑输出K3V3,并又以Block文件块形式保存到磁盘上。

    上面5个步骤是按照图示的简单讲解,其中还有一些细节没有讲到。比如分片后的序列化、map之前的归并、reduce之前的分区等等。这些在后续章节会做出讲解。

    现在这部分内容会很难理解,但记无妨。在下一章节中讲到WordCount代码时回想此图就会很快明白。

- end 

转载于:https://my.oschina.net/vigiles/blog/151113

你可能感兴趣的文章
提高开发效率之VS Code基础配置篇
查看>>
聊天宝彻底凉了,遭罗永浩抛弃,团队就地解散
查看>>
MySQL是如何做容器测试的?
查看>>
移动端解决方案学习记录
查看>>
“十年磨一剑”--有赞的HBase平台实践和应用之路 ...
查看>>
交换综合实验一
查看>>
[Shell 脚本] 备份网站文件至OSS服务(纯shell脚本无sdk) ...
查看>>
阿里云服务器如何修改远程端口?
查看>>
智能媒体管理(IMM)视频分析中明星识别介绍
查看>>
Angular 应用解决跨域访问的问题
查看>>
军武科技获5000万元B轮融资 男性用户占比达到90%以上
查看>>
一位6年老Android面经总结
查看>>
TableStore多元索路由探微
查看>>
Hanlp分词之CRF中文词法分析详解
查看>>
戴姆勒与宝马抱团开发自动驾驶 新旧车企大战在即
查看>>
MIPS R6架构现已可供开放使用
查看>>
MyExcel 2.1.3 发布,提供行级读取处理能力
查看>>
算法与数据结构(七) 图论
查看>>
【趣解编程】条件语句if
查看>>
95后博士入职达摩院,14岁上大学,成阿里史上最年轻科学家
查看>>