快速了解Hadoop架构
2014-07-21 11:15
323 查看
转自:http://www.656463.com/article/376
Hadoop是一个能够对大量数据进行分布式处理的软件框架, Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。hadoop的集群是基于master/slave模式。
运行在master上的:NameNode 、 Secondary NameNode 、JobTracker
运行在slave上的:DataNode 、TaskTracker
1、NameNode是HDFS的守护程序,负责记录文件是如何分割成数据块的,以及这些数据块分别被存到那些数据节点上,只要功能是对内存及I/O进行集中管理(是个单点,发生故障将使集群崩溃)
NameNode 主要功能提供名称查询服务,它是一个jetty服务器
NameNode保存metadata(元数据)信息,包括
文件owership和permissions
文件包含哪些块
Block保存在哪个DateNode(由DataNode启动时上报)
NameNode的metadata信息在启动后会加载到内存
metadata存储到磁盘文件名为“fsimage”
Block的位置信息不会保存到fsimage
2、DataNode这个后台程序负责把HDFS数据块读写到本地的文件系统,当客户端要读写某个数据时候,先由NameNode告诉客户端去哪个DataNode进行具体的读/写操作,然后客户端直接与这个DataNode服务器上的后台程序进行通讯,并且对相关的数据块进行读/写操作。
3、SecondaryNameNode:是一个用来监控HDFS状态的辅助后台程序,就像NameNode一样,每个集群都有一个Secondary NameNode,不接收或记录任何任何实时的数据变化,但是,他会与NameNode进行通信,以便定期的保存HDFS元数据的快照,如果Name发生问题,SecondaryNameNode可以及时的作为备用NameNode。
4、JobTracker:用来连接应用程序与Hadoop,用户代码提交到集群以后,由JobTracker决定那个文件将被处理,并且为不同的task分配节点,同时,他还监控所有运行的task一旦某个task失败了JobTacker就会自动重新开启task。每个集群只有唯一一个JobTracker,位于Master节点
5、TaskTracker:与负责存储的DataNode结合,JobTracker负责分配Tasker,管理各自节点上的task。每个节点只有一个TaskTracker,但一个TaskTracker可以启动多个JVM,用于并行执行map或reduce任务
Hadoop是一个能够对大量数据进行分布式处理的软件框架, Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。hadoop的集群是基于master/slave模式。
运行在master上的:NameNode 、 Secondary NameNode 、JobTracker
运行在slave上的:DataNode 、TaskTracker
1、NameNode是HDFS的守护程序,负责记录文件是如何分割成数据块的,以及这些数据块分别被存到那些数据节点上,只要功能是对内存及I/O进行集中管理(是个单点,发生故障将使集群崩溃)
NameNode 主要功能提供名称查询服务,它是一个jetty服务器
NameNode保存metadata(元数据)信息,包括
文件owership和permissions
文件包含哪些块
Block保存在哪个DateNode(由DataNode启动时上报)
NameNode的metadata信息在启动后会加载到内存
metadata存储到磁盘文件名为“fsimage”
Block的位置信息不会保存到fsimage
2、DataNode这个后台程序负责把HDFS数据块读写到本地的文件系统,当客户端要读写某个数据时候,先由NameNode告诉客户端去哪个DataNode进行具体的读/写操作,然后客户端直接与这个DataNode服务器上的后台程序进行通讯,并且对相关的数据块进行读/写操作。
3、SecondaryNameNode:是一个用来监控HDFS状态的辅助后台程序,就像NameNode一样,每个集群都有一个Secondary NameNode,不接收或记录任何任何实时的数据变化,但是,他会与NameNode进行通信,以便定期的保存HDFS元数据的快照,如果Name发生问题,SecondaryNameNode可以及时的作为备用NameNode。
4、JobTracker:用来连接应用程序与Hadoop,用户代码提交到集群以后,由JobTracker决定那个文件将被处理,并且为不同的task分配节点,同时,他还监控所有运行的task一旦某个task失败了JobTacker就会自动重新开启task。每个集群只有唯一一个JobTracker,位于Master节点
5、TaskTracker:与负责存储的DataNode结合,JobTracker负责分配Tasker,管理各自节点上的task。每个节点只有一个TaskTracker,但一个TaskTracker可以启动多个JVM,用于并行执行map或reduce任务
相关文章推荐
- hadoop、hive、hbase的通俗解释,带你快速了解
- UML项目应用理解--快速了解整个系统架构和详细设计文档
- OpenStack架构快速了解
- [翻译]了解ASP.NET底层架构(完)
- [翻译]了解ASP.NET底层架构(三)
- [翻译]了解ASP.NET底层架构(七)
- 了解ASP.NET底层架构
- [翻译]了解ASP.NET底层架构(二)
- xml-了解 XML 架构
- 了解ASP.NET底层架构
- 导论--呵呵,了解IT行的基本架构--- 推荐
- 编程高手有很多只是编程老手,因为他比你熟悉编码,比你了解整体运行架构,比你迅速找出程序中的Bug,高手只是高在经验积累得比你多比你纯熟而已,那种传说中的高手是少之又少的。
- 要了解CommunityServer的架构不得不看的文章
- 如何才能过快速了解成品软件的数据库结构
- 了解ASP.NET底层架构
- [翻译]了解ASP.NET底层架构(八)
- 快速了解c#中的索引器
- [翻译]了解ASP.NET底层架构(一)
- {tmfc's .net cabin}[翻译]了解ASP.NET底层架构
- 了解ASP.NET底层架构