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. [原]武大预选赛F题-(裸并查集+下标离散化+floyd最短路)

    Problem 1542 - F - Countries Time Limit: 1000MS Memory Limit: 65536KB Total Submit: 266 Accepted: 36 ...

  2. HibernateTools实现pojo类 数据库schma mapping映射的相互转换

    核心 利用HibernateTools,从POJO类,Mapping映射文件,数据库表有其中的一项,就能生成其他两项. 概述 在使用Hibernate开发系统持久层时,按照一般开发流程 1.分析业务 ...

  3. QQ邮箱附件发送

    一.先造一个邮件发送的窗体 二.编辑邮件发送的代码(包括附件) ①附件添加对话框 string file; private void button6_Click(object sender, Even ...

  4. linux 2.6up的设备和设备驱动模型

    在linux2.6 的设备和设备驱动模型构架中,所有的外部设备和驱动程序都挂在总线上 ,总线分为(usb   -- USB设备,PCI  -- PCI 设备 platform --   直接和处理器进 ...

  5. js之json

    关于json不了解的,请点击:http://www.json.org/json-zh.html json对象的属性必须要用双引号,值为字符串类型也只能使用双引号,例:{"name" ...

  6. 如何在Android studio中同时打开多个工程? (转载)

    最近学习Android Studio,想同时打开两个Project.但是点击File->Open之后,原有的Project被关闭掉了.怎么在新的窗口中打开Project呢? 解决: 点击Help ...

  7. HDFS常用命令

    HDFS 常用的文件操作命令 hdfs dfs -text /pub/20151019/1/4/gwmvod/mediags.moretv.com.cn/*.bz2 | wc -l  hdfs dfs ...

  8. 理解ASP.NET MVC的路由系统

    引言 路由,正如其名,是决定消息经由何处被传递到何处的过程.也正如网络设备路由器Router一样,ASP.NET MVC框架处理请求URL的方式,同样依赖于一张预定义的路由表.以该路由表为转发依据,请 ...

  9. JProfiler 使用说明

    一个全功能的 Java 剖析工具( profiler ),专用于分析 J2SE 和 J2EE 应用程序.它把 CPU .执行绪和内存的剖析组合在一个强大的 应用中. JProfiler 可提供许多 I ...

  10. final修饰符,finally,finalize区别

    1.final 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承.因此,一个类不能即被声明为abstract,又被声明为final.将变量或方法声明为final,可以保证 ...