Hadoop是如何工作的
2015-12-03 20:52
232 查看
Hadoop主要是分布式计算和存储的框架,所以Hadoop工作过程主要依赖于HDFS(Hadoop Distributed File System)分布式存储系统和Mapreduce分布式计算框架。
1、首先介绍HDFS是如何工作的。
![](http://img.blog.csdn.net/20151203201000268?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
注:上图是从视频网站的截图
分布式存储系统HDFS中工作主要是一个主节点namenode(master)(hadoop1.x只要一个namenode节点,2.x中可以有多个节点)和若干个从节点Datanode(数据节点)相互配合进行工作,HDFS主要是存储Hadoop中的大量的数据,namenode节点主要负责的是:
1、接收client用户的操作请求,这种用户主要指的是开发工程师的java代码或者是命令客户端操作。
2、维护文件系统的目录结构,主要就是大量数据的关系以及位置信息等。
3、管理文件系统与block的关系,Hadoop中大量的数据为了方便存储和管理主要是以block块(64M)的形式储存。一个文件被分成大量的block块存储之后,block块之间都是有顺序关系的,这个文件与block之间的关系以及block属于哪个datanode都是有namenode来管理。
Datanode的主要职责是:
1、存储文件。
2、将数据分成大量的block块。
3、为保证数据的安全,对数据进行备份,一般备份3份。当其中的一份出现问题时,将由其他的备份来对数据进行恢复。
2、MapReduce并行计算模型
![](http://img.blog.csdn.net/20151203203548021?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
注:上图来自网络
以上是MapReduce流程图
MapReduce主要也是一个主节点JOPtracker和testtracker组成,主要是负责hadoop中的数据处理过程中的计算问题。
joptracker主要负责接收客户端传来的任务,并且把计算任务交给很多testtracker工作,同时joptracker会不断的监控testtracker的执行情况。
testtracker主要是执行joptracker交给它的任务具体计算,例如给求大量数据的最大值,每个testtracker会计算出自己负责的数据中的最大值,然后交给joptracker。
Hadoop的主要两个框架组合成了分布式的存储和计算,使得hadoop可以很快的处理大量的数据。
1、首先介绍HDFS是如何工作的。
注:上图是从视频网站的截图
分布式存储系统HDFS中工作主要是一个主节点namenode(master)(hadoop1.x只要一个namenode节点,2.x中可以有多个节点)和若干个从节点Datanode(数据节点)相互配合进行工作,HDFS主要是存储Hadoop中的大量的数据,namenode节点主要负责的是:
1、接收client用户的操作请求,这种用户主要指的是开发工程师的java代码或者是命令客户端操作。
2、维护文件系统的目录结构,主要就是大量数据的关系以及位置信息等。
3、管理文件系统与block的关系,Hadoop中大量的数据为了方便存储和管理主要是以block块(64M)的形式储存。一个文件被分成大量的block块存储之后,block块之间都是有顺序关系的,这个文件与block之间的关系以及block属于哪个datanode都是有namenode来管理。
Datanode的主要职责是:
1、存储文件。
2、将数据分成大量的block块。
3、为保证数据的安全,对数据进行备份,一般备份3份。当其中的一份出现问题时,将由其他的备份来对数据进行恢复。
2、MapReduce并行计算模型
注:上图来自网络
以上是MapReduce流程图
MapReduce主要也是一个主节点JOPtracker和testtracker组成,主要是负责hadoop中的数据处理过程中的计算问题。
joptracker主要负责接收客户端传来的任务,并且把计算任务交给很多testtracker工作,同时joptracker会不断的监控testtracker的执行情况。
testtracker主要是执行joptracker交给它的任务具体计算,例如给求大量数据的最大值,每个testtracker会计算出自己负责的数据中的最大值,然后交给joptracker。
Hadoop的主要两个框架组合成了分布式的存储和计算,使得hadoop可以很快的处理大量的数据。
相关文章推荐
- eclipse 导入tomcat7源码
- Linux驱动工作原理
- Kafka剖析:Kafka背景及架构介绍
- OpenCV&VS2010&Win7(64位)配置
- linux下kodi没有声音的解决
- 微服务架构-0
- linux shell 编程基础
- windows下Eclipse JDK环境变量配置 Tomcat配置
- Linux驱动开发思维导图
- Linux 下iptables相关配置
- OpenCV相机标定calibrateCamera坐标系详解
- window.screenLeft&&window.Top&&window.screenX&&window.screenY
- 【OpenCV学习笔记】2.4制作绘图板
- kvm openvswitch
- Linux挂载错误问题(Error mounting /dev/sda8 at /media)
- 关于挂载的一些简单试验
- linux下添加tomcat自启动
- apache服务器的常用功能及设置
- apache服务器的常用功能及设置
- DropDownList绑定数据表实现两级联动示例