MapReduce工作原理图文详解 (炼数成金)
MapReduce工作原理图文详解
1.Map-Reduce 工作机制剖析图:
1.首先,第一步,我们先编写好我们的map-reduce程序,然后在一个client 节点里面进行提交.(一般来说可以在Hadoop集群里里面的任意一个节点进行,只要该节点装了Hadoop并且连入了Hadoop集群)
2.job client 在收到这个请求以后呢,会找到JobTracker并且请求一个作业ID(Job ID)。(根据我们的核心配置文件,可以很轻易的找到JobTracker)
3.通过HDFS 系统把这个作业的代码散发出去,
4. 提交作业
5.在JobTracker端开始初始化工作,比方说:在其内存里建立一系列数据结构,来记录这个Job的运行情况,其放在一个作业队列里,等待作业调度器对其进行调度等等
6.JobTracker 会像HDFS的nameNode 询问有关的一些数据在哪些文件里面,然后这些文件分别散落在哪些节点里面,我们分别获知这些情况.因为这个作业,就是Map-reduce程序跟这个数据之间是 "就近运行" 的,就是程序必须要跟它所要处理的数据要放在一块,所以呢,这些信息是我们运行这个作业所必需的.
7. 通关过JobTracker 和 TaskTracker 之间每分钟进行一次的心跳联系,可以知道有哪些 TaskTracker 可以参与到我们的计算里面来.比如说:这个 TaskTracker呢首先不应该是宕掉的,它是活着的.另外它的符合应该是比较低的.那它如果正在运行其他作业的话呢.那就不大适合在它很繁忙的时候就给他加上新的作业,那最好是一个空闲的节点,
8.把那些要运行的 TaskTracker 给确定下来,就是有哪些TaskTracker可以参与我们的map-reduce计算里面去,于是呢,那些TaskTracker呢就会从HDFS里面把相关的Java代码给取过来,取过来以后呢,就开始架设这个Java的虚拟机,就是在它本地把它的Java虚拟机给跑起来.然后就运行这个作业的工作.
这个大致的流程就是这样子.
以上内容来自: 炼数成金教程.
MapReduce工作原理图文详解 (炼数成金)的更多相关文章
- <转>MapReduce工作原理图文详解
转自 http://weixiaolu.iteye.com/blog/1474172前言: 前段时间我们云计算团队一起学习了hadoop相关的知识,大家都积极地做了.学了很多东西,收获颇丰.可是开学 ...
- MapReduce工作原理图文详解
目录:1.MapReduce作业运行流程2.Map.Reduce任务中Shuffle和排序的过程 1.MapReduce作业运行流程 流程示意图: 流程分析: 1.在客户端启动一个作业. 2.向Job ...
- MapReduce 1工作原理图文详解
MapReduce工作原理图文详解 一 MapReduce程序执行流程 程序执行流程图如下: 流程分析:1.在客户端启动一个作业.2.向JobTracker请求一个Job ID.3.将运行作业所需要的 ...
- LVS-DR工作原理图文详解
为了阐述方便,我根据官方原理图另外制作了一幅图,如下图所示:VS/DR的体系结构: 我将结合这幅原理图及具体的实例来讲解一下LVS-DR的原理,包括数据包.数据帧的走向和转换过程. 官方的原理说明:D ...
- dataguru(炼数成金)大数据培训基地印象
dataguru访问地址:http://f.dataguru.cn/?fromuid=99611 课程优惠码:C4B6 这段时间一直在dataguru(炼数成金)上学习<hadoop数据分析平 ...
- 炼数成金数据分析课程---14、Logistic回归
炼数成金数据分析课程---14.Logistic回归 一.总结 一句话总结: 大纲+实例快速学习法 主要讲Logistic回归的原理及编程实现 1.事件的优势比(odds)是什么? 记y取1的概率是p ...
- 炼数成金(dataguru)IT技能修炼
2016我定的目标就是要走出舒适区,进入学习区!为了少走弯路,节约学习的成本和时间,我选择了dataguru.看到心仪的课程毫不犹豫的就报了名. 分享了炼数成金邀请码,使用邀请码报名课程可以减免50% ...
- 截图:【炼数成金】深度学习框架Tensorflow学习与应用
创建图.启动图 Shift+Tab Tab 变量介绍: F etch Feed 简单的模型构造 :线性回归 MNIST数据集 Softmax函数 非线性回归神经网络 MINIST数据集分类器简单版 ...
- Python数据分析【炼数成金15周完整课程】
点击了解更多Python课程>>> Python数据分析[炼数成金15周完整课程] 课程简介: Python是一种面向对象.直译式计算机程序设计语言.也是一种功能强大而完善的通用型语 ...
随机推荐
- toggle
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Linux 命令 - free: 显示系统的内存信息
命令格式 free [-b | -k | -m] [-o] [-s delay ] [-t] [-l] [-V] 命令参数 -b 显示内存的单位为 Byte. -k 显示内存的单位为 KB. -m 显 ...
- 参数请求post, get , delete中的基本使用(1)
/// <summary> /// get 数据的时候可以采用此函数大部分功能 /// </summary> /// <param name="args&quo ...
- Android Studio工程目录介绍
来自知乎: Android Studio工程目录结构 .gradle 是gradle运行以后生成的缓存文件夹. .idea 是android studio/Intellij IDEA工程打开以后生成的 ...
- 推荐一款App运营工具:AYL爱盈利App榜单监控
对包括开发者.产品运营.投资人在内的诸多移动互联网从业人员而言,国内Android应用市场和IOS应用市场的榜单变化数据时大家的必修功课之一:看看这段时间所关注的垂直领域里最火的是哪几款应用:看看竞争 ...
- 在Tomcat中配置基于springside的项目
注意点: Tomcat默认没有配置Transaction,需要在/Conf/Context.xml配置 1 <Transaction factory="org.objectweb.jo ...
- 第六十三篇、runtime实现归解档
#import <objc/runtime.h> #import <objc/message.h> @implementation HDFArchiveModel - (voi ...
- OC7_单词个数
// // WordManger.h // OC7_单词个数 // // Created by zhangxueming on 15/6/17. // Copyright (c) 2015年 zhan ...
- Linux学习三部曲(之三)
今天用linux的时候,想到在windows客户端上传文件到linux服务端. 下面介绍一种方法. 可以通过SecureCRT上传.下载文件(使用sz与rz命令). 1. 安装 lrzsz 在Secu ...
- SpringMVC接收多个对象
问题背景: 要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:将Json对象序列化成Json字符串提 ...