HDFS Federation(HDFS联邦)

HDFS有两个主要层:

Namespace 由目录、文件和块组成;支持所有命名空间对文件和目录的操作。

Block Storage Service 由Block Management和Storage组成。

Block Management 提供dataNode集群成员关系,注册信息和周期性的心跳; 处理块报告,维护块位置; 支持块相关的操作,如创建、删除、修改等; 管理副本数量、位置,删除多余副本;

Storag是dataNode提供的。

之前的HDFS架构只允许存在一个namespace。一个Namenode管理这个namespace。HDFS联邦通过增加多个namenode/namespace来解决这个先前架构的限制。

HDFS联邦使用多个独立的NameNode/Namespace。NameNode是联邦的,意味着他们是独立的,不会要求相互协作。DataNode是存储block的。每个DataNode都在集群中的所有NameNode注册。DataNode发送周期性的心跳和block报告,并且处理NameNode发回的命令。

一个block pool 是块的集合,这些块属于一个单一的namespace。Datanode存储着集群中所有block pool中的块。block pool的管理相互之间是独立的。这意味着一个namespace可以独立的生成块ID,不需要与其他namespace协调。一个Namenode失败不会导致Datanode的失败,这些Datanode还可以服务其他Namenode。

一个Namespace和他的block pool一起称作namespace volume。这是一个自包含单元。当一个namenode/namespace删除后,对应的block pool也会被删除。当集群升级时,每个namespace volume也会升级。

ClusterID是用来标示集群中所有节点的。当Namenode格式化时,这个id会自动产生。

多namenode/namespace的好处:

HDFS集群支持存储的水平扩展,但是namespace不能。对于大集群部署或者大量小文件存储时,使用多namespace会更好。

之前的设计中,文件系统操作效率受制于单个的namenode。现在,多个namenode提高了文件读写操作效率。

一个namenode在多用户环境中没有隔离性。使用多namespace,不同的应用或者用户可以隔离在不同的namespace中。

联邦配置是向后兼容的,之前架构下的应用不经修改的就可以工作。

联邦中有NameServiceID。匹配的namenode、secondary、backup、checkpointer节点,都有相同的NameServiceID.

YARN

新的架构在hadoop-0.23引入的,把JobTracker两个主要的功能分为Resource Management(RM,资源管理)和job life-cycle management(作业生命周期管理),每个都是独立的组件。

新的ResourceManager管理着所有计算机资源对应用的分配工作。每个应用都会对应一个ApplicationMaster(AM)。

一个应用或者是原来的一个普通job,或者是这些job的DAG。

ResourceManager和每个节点上的NodeManager构成了计算层。其中,NodeManager会管理所在节点上的用户进程。

每个应用对应的ApplicationManager负责执行和监控task。

M有两个组件:Schuduler和ApplicationManager。

Scheduler负责给各种应用分配资源,不会监控或者跟踪应用状态。它也不保证应用失败或者硬件失败后重启任务。当前版本的调度器,只根据内存分配资源给应用。调度器是可插拔的。

每个节点都有一个NodeManager,负责管理本节点资源的使用情况,如cpu、内存、磁盘、网络等,并把这些信息报告给ResourceManager/Scheduler.

ApplicationManager负责管理资源容器。

hadoop2.x的变化的更多相关文章

  1. 安装hadoop2.7.3

    hadoop3与hadoop2.x的变化很大,hadoop3很多东西现在做起来太麻烦了,这里先安装hadoop2.7.3 此贴学习地址http://www.yiibai.com/t/mapreduce ...

  2. [hadoop读书笔记]前言

    hadoop2.0+主要变化: 全新的MapReduce 2,它建立在一个新的分布式资源管理系统之上,该系统称之为YARN. YARN:分布式资源管理系统

  3. 坐实大数据资源调度框架之王,Yarn为何这么牛

    摘要:Yarn的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计算引擎,成为大数据的代名词. 本文分享自华为云社区<Yarn为何能坐实资源调度框架之王?>,作者: Java ...

  4. Hadoop2.2.0安装过程记录

    1    安装环境1.1    客户端1.2    服务端1.3    安装准备    2    操作系统安装2.1.1    BIOS打开虚拟化支持2.1.2    关闭防火墙2.1.3    安装 ...

  5. Hadoop学习笔记—21.Hadoop2的改进内容简介

    Hadoop2相比较于Hadoop1.x来说,HDFS的架构与MapReduce的都有较大的变化,且速度上和可用性上都有了很大的提高,Hadoop2中有两个重要的变更: (1)HDFS的NameNod ...

  6. 最详细的hadoop2.2.0集群的HA高可靠的最简单配置

    简介 [from http://www.open-open.com/lib/view/open1390717631132.html] hadoop中的NameNode好比是人的心脏,非常重要,绝对不可 ...

  7. HADOOP安装指南-Ubuntu15.10和hadoop2.7.2

    Ubuntu15.10中安装hadoop2.7.2安装手册 太初 目录 1.      Hadoop单点模式... 2 1.1        安装步骤... 2 0.环境和版本... 2 1.在ubu ...

  8. 从零自学Hadoop(10):Hadoop1.x与Hadoop2.x

    阅读目录 序 里程碑 Hadoop1.x与Hadoop2.x 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的 ...

  9. [整理]Centos6.5 + hadoop2.6.4环境搭建

    搭建Hadoop集群环境(3台机器) 1 准备环境 1.1 安装系统,并配置网络使3台机器互联互通,且SSH可直连(无需密码.保存私钥) 1.1.1 安装系统 安装Centos 6.5系统 安装过程略 ...

随机推荐

  1. Git使用教程及常用命令大全

     一.git命令名词解释1.添加/跟踪/暂存:添加到本地索引       git add 文件名2.提交:提交到本地仓库       git commit -m '注释'3.推送:将提交到本地仓库的所 ...

  2. SQL注入-攻入Apple ID钓鱼网站实录

    之前写的一篇利用SQL注入方式攻击钓鱼网站的文章,现在在博客园再分享一下. 下午,朋友发了一条朋友圈,内容大概这样: 大体就是她的iPhone丢了,收到了钓鱼短信,多么熟悉的套路,如下: 还好她比较机 ...

  3. Redis笔记——技术点汇总

    目录 · 特点 · 安装 · 数据库 · 服务器命令 · 数据类型及其操作命令 · 数据结构 · string · list · set · hash · zset · 发布与订阅 · 排序 · 事务 ...

  4. 8.21.2 深入finally语句快

    关于finally语句块 1.finally语句块可以直接和try语句块联用. try....finally... 2.try...catch....finally 也可以. 3.在finally语句 ...

  5. spring boot整合jsp的那些坑(spring boot 学习笔记之三)

    Spring Boot 整合 Jsp 步骤: 1.新建一个spring boot项目 2.修改pom文件 <dependency>            <groupId>or ...

  6. python+selenium自动化软件测试(第1章):环境搭建,你也可以直接用Anaconda!

    1.1 环境搭建 1.1.1 selenium简介Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架.它是一款用于运行端到端功能测试的超强工具.您可以使用多个编程语言编写测试 ...

  7. JSP慕课网之application、page、pageContext、config、exception

    接下来使用getSession().forward().include()方法. 跳转的include.jsp页面:

  8. 慕课网视频破解付费分享-前端开发-Python等

    微信小程序 慕课网   BAT大牛经验总结全面深入解读Android面试   前端JS基础面试技巧   vue2.0+node.js+mongodb全栈打造商城   Vue.js高级实战-开发移动端音 ...

  9. 【C++小白成长撸】--(续)单偶数N阶魔方矩阵

    1 /*程序的版权和版本声明部分: **Copyright(c) 2016,电子科技大学本科生 **All rights reserved. **文件名:单偶数N阶魔方矩阵 **程序作用:单偶数N阶魔 ...

  10. 使用SVG基本操作API

    前面的话 本文将详细介绍SVG基本操作API,并使用这些API操作实例效果 基础API 在javascript中,可以使用一些基本的API来对SVG进行操作 [NS地址] 因为SVG定义在其自身的命令 ...