1、Hadoop 是一个能够对大量数据进行分布式处理的软件框架,实现了Google的MapReduce编程模型和框架,能够把应用程序分割成许多小的工作单元放到任何集群节点上执行。

作业(job):一个准备提交执行的应用程序;

任务(task):从一个作业划分出的、运行于各计算节点的工作单元;

HDFS:主要负责各个节点上的数据存储,并实现高吞吐率的数据读写;

2、在分布式存储和分布式计算方面,Hadoop使用主/从(Master/Slave)架构,在集群中运行一系列后台程序

(1)NameNode:HDFS的守护程序,负责记录文件是如何分割成数据块的,以及这些数据块分别被存储到哪些数据节点上。主要功能是对内存及I/O进行集中管理;NameNode所在服务器不存储任何用户信息或执行任何计算任务,以免这些程序降低服务器性能。但NameNode是Hadoop集群中的一个单点,一旦宕机,整个系统将无法运行;(50070端口)

(2)DataNode:集群中的每个从服务器都运行一个DataNode后台程序,负责把HDFS数据块读写到本地的文件系统。当需要通过客户端读写某个数据时,先由NameNode告诉客户端从哪个DataNode进行具体读写操作,然后直接与这个DataNode服务器上的后台程序进行通信,并且对相关的数据块进行读写操作;

(3)Secondary NameNode: 用来监控HDFS状态的辅助后台程序。每个集群都有一个Secondary NameNode,部署在一台单独的服务器上,他不接收或记录任何实时的数据变化,但会与NameNode通信,以便定期地保存HDFS的快照功能,可以将NameNode的宕机时间和数据损失降低到最小,可以作为备用NameNode使用;

(4)JobTracker: 用来连接应用程序与Hadoop。用户代码提交到集群后有JobTracker决定哪个文件将被处理,并且为不同的task分配节点,同时还监控所以运行的task,一旦某个task失败了,JobTracker就会自动重新开启这个task,大多数情况下这个task会被放在不同的节点上。具体取决于重启的预设值。每个Hadoop集群只有一个JobTracker,一般运行在Master节点上;(50030端口)

(5)TaskTracker: 与负责存储数据的DataNode相结合,其处理结构上也遵循主从架构。TaskTracker位于从节点,独立管理各自的task。每个TaskTracker负责独立执行具体的task,而JabTracker负责分配task.每个TaskTracker可以产生多个Java虚拟机(JVM),用于处理多个map及reduce任务。TaskTracker的一个重要职责就是雨JobTracker交互,如果JobTracker无法准时获取TaskTracker提交的信息,JobTracker就判定TaskTracker已经崩溃,并将任务分配给其他节点处理。

其中NameNode、Secondary NameNode、JobTracker运行于Master节点上,而在每个Slave节点上部署DataNode、TaskTracker,以便直接处理本机的数据

1、Hadoop架构的更多相关文章

  1. Hadoop架构的初略总结(2)

    Hadoop架构的初略总结(2) 回顾一下前文,我们总结了以下几个方面.我们为什么需要Hadoop:Hadoop2.0生态系统的构成:Hadoop1.0中HDFS和MapReduce的结构模型. 我们 ...

  2. Hadoop架构的初略总结(1)

    Hadoop架构的初略总结(1) Hadoop是一个开源的分布式系统基础架构,此架构可以帮助用户可以在不了解分布式底层细节的情况下开发分布式程序. 首先我们要理清楚几个问题. 1.我们为什么需要Had ...

  3. Hadoop 架构与原理

    1.1.   Hadoop架构 Hadoop1.0版本两个核心:HDFS+MapReduce Hadoop2.0版本,引入了Yarn.核心:HDFS+Yarn+Mapreduce Yarn是资源调度框 ...

  4. Hadoop架构及集群

    Hadoop是一个由Apache基金会所开发的分布式基础架构,Hadoop的框架最核心的设计就是:HDFS和MapReduce.HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了 ...

  5. Hadoop架构: 流水线(PipeLine)

    该系列总览: Hadoop3.1.1架构体系——设计原理阐述与Client源码图文详解 : 总览 流水线(PipeLine),简单地理解就是客户端向DataNode传输数据(Packet)和接收Dat ...

  6. Hadoop架构: HDFS中数据块的状态及其切换过程,GS与BGS

    该系列总览: Hadoop3.1.1架构体系——设计原理阐述与Client源码图文详解 : 总览 首先,我们要提出HDFS存储特点: 1.高容错 2.一个文件被切成块(新版本默认128MB一个块)在不 ...

  7. Hadoop架构: 关于Recovery (Lease Recovery , Block Recovery, PipeLine Recovery)

    该系列总览: Hadoop3.1.1架构体系——设计原理阐述与Client源码图文详解 : 总览 在HDFS中,有三种Recovery 1.Lease Recovery 2.Block Recover ...

  8. hadoop知识点总结(一)hadoop架构以及mapreduce工作机制

    1,为什么需要hadoop 数据分析者面临的问题 数据日趋庞大,读写都出现性能瓶颈: 用户的应用和分析结果,对实时性和响应时间要求越来越高: 使用的模型越来越复杂,计算量指数级上升. 期待的解决方案 ...

  9. hadoop架构

    HADOOP中可以分为两个大的模块,存储模块和计算模块.HDFS作为存储模块,JobTracker,TaskTracker构成计算模块.   1.HADOOP的文件是以HDFS格式存储的   HDFS ...

随机推荐

  1. 13.allegro 颜色设置[原创]

    1. -- 或者: 2. -- 3. -- 4. 5. 6. 7. 8. 9. 10. -- 11.颜色保存: -- 12. 板子做好后,visibility查看 13.飞线显示: --------- ...

  2. leetcode:Insertion Sort List

    Sort a linked list using insertion sort. 分析:此题要求在链表上实现插入排序. 思路:插入排序是一种O(n^2)复杂度的算法,基本想法就是每次循环找到一个元素在 ...

  3. HeadFirst Jsp 06 (会话管理)

    现在我们希望能够跨多个请求保留客户特定的状态. 现在, 模型中的业务只是检查请求中的参数, 并返回一个响应(建议), 应用中没有谁记得在当前请求之前与这个客户之间发生过什么. 与一个客户的整个会话期间 ...

  4. JSON 之 SuperObject(7): 可以省略的双引号

    在 JSON 中, 字符串应该在双引号中; 从上个例子才发现: 原来这个双引号可以省略, 有空格都行 当然只是在程序代码中可以省略, 对象会自动识别添加的. 即如此, 下面写法都可以: uses Su ...

  5. SQL注入实验,PHP连接数据库,Mysql查看binlog,PreparedStatement,mysqli, PDO

    看到有人说了判断能否sql注入的方法: 简单的在参数后边加一个单引号,就可以快速判断是否可以进行SQL注入,这个百试百灵,如果有漏洞的话,一般会报错. 下面内容参考了这两篇文章 http://blog ...

  6. ssh传输出现encountered 1 errors during the transfer解决办法

    以下方法简单排序,从简单到复杂: 法一:在SSH Secure File Transfer(上传文件那个),打开“Operation”菜单,打开“File Transfer Mode”子菜单,再选择“ ...

  7. c#调用系统资源大集合-1

    using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServi ...

  8. UVa 10420 List of Conquests

    题意就是有N个pl妹子,然后每行第一个单词是妹子的国籍,后面是妹子的名字. 你的任务就是统计相同国籍妹子的个数,然后按字母表顺序输出. 我首先把所有的国籍都读入,然后用qsort()按字母表顺序排序. ...

  9. svn备份脚 本

    一直用这套脚本备份,脚本主体虽不是原创,但是从网上得到后因为不能运行也进行了些修改,前两天看到有人问关于SVN备份的问题,今天又把脚本整理了一下,解决了不能循环备份多个配置库的问题.希望对大家有所帮助 ...

  10. (转)UILabel的详细使用

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 75, 40)];   //初始化UIlbel并设定frame lab ...