Hadoop学习篇 2 初识 Hadoop
在一个全配置的集群上,运行Hadoop意味着在网络分布的不同服务器上运行一组守护进程 (daemons),这些守护进程或运行在单个服务器上,或运行与多个服务器上,他们包括:
(1) NameNode(名字节点)
(2) DataNode(数据节点)
(3) Secondary NameNode (次名节点)
(4) JobTracker (作业跟踪节点)
(5) TaskTracker (任务跟踪节点)
NameNode
被认为是Hadoop守护进程中最重要的一个,可以说,NameNode就是一个大脑。

运行NameNode会消耗掉大量的内存和I/O资源,因此,为了减轻机器的负载,驻留NameNode的服务器一般不会负责MapReduce的计算、存储用户数据。这也意味着,NameNode不会和JobTracker\TashTracker存在于同一台服务器上。一旦NameNode服务器出现宕机,造成的影响一般会比较严重。
DataNode
每个集群的从节点上都会驻留一个DataNode的守护进程,来执行分布式文件系统的繁重工作——将HDFS数据快读取或写入到本地文件系统的实际文件中。当希望对HDFS文件进行读写时,文件被分割为多个块,有NameNode告知客户端每个数据块驻留在那个DataNode。客户端直接与DataNode守护进程进行通信,来处理与数据块对相对应的本地文件。DataNode与DataNode节点直接也可以直接进行通信,用于完成数据的复制。

上图解释了NameNode和DataNode节点的作用,NameNode指明了数据存放的名称和位置,分别为/user/chuck/data1 下的1、2、3文件和存储在 /user/james/data2下的
4、5文件。四个DataNode实现了1、2、3、4、5文件的复制。确保了任何一个DataNode节点失败后任然可以正常工作。DataNode会不断的向NameNode节点报告,将当前节点存储的数据块告知NameNode,为之提供本地修改的相关信息,同时接受指令的创建、移动或删除本地磁盘上的数据块。
Secondary NameNode

JobTracker
jobtracker守护进程是Hadoop和应用程序之间的纽带,一旦代码提交到集群上,JobTracker就会执行确定的任务,包括决定处理哪些文件,为不同的任务分配节点以及监控所有任务的运行,如果任务失败,jobTracker将会自动重启任务,但是所分配的节点可能会不同。
每个Hadoop集群只有一个JobTracker守护进程,他通常运行在服务器的主节点上。
TaskTracker

下面的图形描述了一个Hadoop集群的拓扑结构,这是一个主/从结构,特点是主节点上运行NameNode和JobTracker,而从节点上运行DataNode和TaskTracker。并使用独立的节点运行SSN,以防止主节点运行失败。

了解了以上信息,我们来关注一下Hadoop的NameNode和JobTracker究竟分别执行什么样的功能?
1、从存储角度来理解:集群是由一个Namenode和若干datanode组成,而secondary作为Namenode的一个备份
Hadoop学习篇 2 初识 Hadoop的更多相关文章
- Hadoop学习笔记(1) 初识Hadoop
1. Hadoop提供了一个可靠的共享存储和分析系统.HDFS实现存储,而MapReduce实现分析处理,这两部分是Hadoop的核心. 2. MapReduce是一个批量查询处理器,并且它能够在合理 ...
- Hadoop学习1(初识hadoop)
Hadoop生态系统的特点 1)源代码开源 2)社区活跃,参与者多 3)涉及分布式存储和计算的各方面 4)已得到企业界的验证 Hadoop构成 1) 分布式文件系统HDFS(Hadoop Distri ...
- Hadoop学习总结之五:Hadoop的运行痕迹
Hadoop学习总结之五:Hadoop的运行痕迹 Hadoop 学习总结之一:HDFS简介 Hadoop学习总结之二:HDFS读写过程解析 Hadoop学习总结之三:Map-Reduce入门 Ha ...
- 大数据学习笔记之初识Hadoop
1.Hadoop概述 1.1 Hadoop名字的由来 Hadoop项目作者的孩子给一个棕黄色的大象样子的填充玩具的命名 Hadoop的官网:http://hadoop.apache.org . 1.2 ...
- Hadoop学习笔记—4.初识MapReduce
一.神马是高大上的MapReduce MapReduce是Google的一项重要技术,它首先是一个编程模型,用以进行大数据量的计算.对于大数据量的计算,通常采用的处理手法就是并行计算.但对许多开发者来 ...
- Hadoop学习1—浅谈hadoop
大数据这个词越来越热,本人一直想学习一下,正巧最近有时间了解一下.先从hadoop入手,在此记录学习中的点滴. 什么是hadoop? What Is Apache Hadoop? The Apache ...
- Hadoop学习之Ubuntu12.04 Hadoop 环境搭建笔记
SSH无密码配置 Hadoop在Ubuntu12.04上搭建环境 报错及问题 SSH无密码配置 参考:Linux(Centos)配置OpenSSH无密码登陆 注意问题: Hadoop集成环境三台机器都 ...
- hadoop学习笔记--找到执行hadoop的入口
参与个hadoop项目,之前没搞过,赶紧学习: 照葫芦画瓢,得到代码是hdfs2local.sh脚本和LiaoNingFilter.jar包,迫不及待用jd-gui打开jar包,搜索到main(在MA ...
- hadoop学习通过虚拟机安装hadoop完全分布式集群
要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...
随机推荐
- web.xml相关知识摘录整理
web.xml 中的listener. filter.servlet 加载顺序及其详解 在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人 ...
- ubuntu下配置lamp环境
安装MySQL sudo apt-get install mysql-server mysql-client 安装php模块 Sudo apt-get install php5 安装Apache2 S ...
- cocos2d-x 之 CCArray 源码分析(2)
cocos2d-x 自己实现了一个数组CCArray ,下面我们来分析一下CCArray的源码 CCArray继承CCObject,所以,CCArray也具有引用计数功能和内存自动管理功能. 数组的源 ...
- android stuido build 慢的解决办法
Enable Offline Work: Click File -> Settings. Search for "gradle" and click in Offline w ...
- JS,数组小练习
var arr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0];要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组 p.p1 { margin: 0.0p ...
- FFMpeg写MP4文件例子分析
http://blog.csdn.net/eightdegree/article/details/7425811 这段时间看了FFMpeg提供的例子muxing.c,我略微修改了下源代码,使其生成一个 ...
- linux 常用命令大全
linux 常用命令大全 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统 ...
- 求教——使用node做表单,刷新浏览器页面,浏览器为什么会重复提交上次所填的信息
最近在学些node,按照<nodejs实战>上的代码做练习,发现有表单重复提交的问题 第一次打开页面,显示如图是get请求 图1 现在我们提交aaa,显示如图,post请求 图2 刷新页面 ...
- SQLite数据库在本地可以写,发布到服务器就不能写
用SQLite开发的一个Web Api,提供Json和Jsonp格式的数据,在本地使用vs2012开发并运行时,数据库的读写均正常. 但发布到Windows Server 2008 + IIS 7.5 ...
- 个性二维码开源专题<替换元素点>
基础方法:ChangeFillShape //修改填充形状 ChangeFillShape(...) // 摘要: // 修改填充形状 // // 参数: // g: // 图形画板 // // Fo ...