hadoop2.x的变化

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负责管理资源容器。

转载于:https://www.cnblogs.com/mlj5288/p/4449766.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/574643.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python enumeration_python枚举防止无效的属性分配

要使枚举类完全“只读”,只需要使用__setattr__hook防止全部的属性分配。因为元类附加到类之后它是创建的,分配正确的枚举值没有问题。就像伊桑的回答一样,我用的是EnumMeta类作为自定义元类的基础:from enum import EnumMeta, Enumclass FrozenEnumMeta(EnumMeta):"Enum …

java wps linux 安装_ubuntu安装Java开发环境

1. 从sun主页JDK for Linux版本。这里的是jdk-6u6--i586.bin.2. 用root用户登录ubuntu,或是在普通用户下用su命令切换用户。切换到所需的安装目录。类型:cd 例如,要在 /usr/java/ 目录中 安装软件,请键入:cd /usr…

[BZOJ 2594] [Wc2006]水管局长数据加强版 【LCT】

题目链接:BZOJ - 2594 题目分析 这道题如果没有删边的操作,那么就是 NOIP2013 货车运输,求两点之间的一条路径,使得边权最大的边的边权尽量小。 那么,这条路径就是最小生成树上这两点之间的路径。 然而现在有了删边操作…

vs升级c++项目遇到的一些问题

1、error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0501 or higher is recommended. 在工程的stdafx.h中,改为如下配置: #ifndef WINVER #define WINVER 0x0501 #endif #ifndef _WIN32_WINNT #def…

python模糊匹配忽略大小写_在python中忽略大小写的简单方法?

如果搜索多个单词,则创建一个集合是有意义的:print(set(brown_sents).intersection(zip(repeat(most_ambiguous_word),word_class_dict[most_ambiguous_word])))输出{(word2, wordclass2), (word2, wordclass3)}要理解它的作用,请将脚本保存到…

IAR7.51提示秘钥无效IAR 以及 CCDebug驱动(包含win7 64bit)

今天IAR不识别我的仿真器,然后我感觉驱动有问题,就把之前的驱动卸载了,但是按照以前的方法按章驱动(选择路径到IAR的某个目录),提示找不到驱动。。。 也不想重新装个IAR了,于是到CSDN上下载了这个驱动程序,…

cannot be resolved or is not a field

我通常的解决办法:1.看看是不是manifest.xml文件有错误,如果有的话,R.java是不会生成的2.一般来说R.layout.aaa.xml,这里的R是自己的包的R.java,不是android系统的R.java,所以如果引入包的时候有import and…

java解析时已到达文件结尾_IO流读取到文件末尾继续读取

import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;//正常情况//main()方法中第一个read()和和第二个read();是可以顺利执行完的…

百度地图动态显示查询结构

<script type"text/javascript">// 百度地图API功能function G(id) {return document.getElementById(id);}var map new BMap.Map("l-map");map.centerAndZoom("北京",12); // 初始化地图,设置城市和地图级别。var ac …

solr5.0mysql_ik扩展支持Solr配置详解

扩展ik原生代码&#xff1a;public class IKAnalyzerTokenizerFactory extends TokenizerFactory{private boolean useSmart;public boolean useSmart(){return this.useSmart;}public void setUseSmart(boolean useSmart) {this.useSmart useSmart;}public IKAnalyzerTokeniz…

apache htpasswd.exe创建密码

一、使用apache htpasswd.exe创建密码文件&#xff0c;命令请看PHP推荐教程&#xff1a;apache htpasswd命令用法详解 apache htpasswd命令用法实例 1、如何利用htpasswd命令添加用户&#xff1f; 在apache安装目录bin下找到htpasswd #usr/local/apache/bin/htpasswd -bc .pass…

考研复试考java_2019考研复试经验帖:过来人谈5件“小事”

关于复试&#xff0c;决定这你的命运&#xff0c;考生一定要好好把握。关于复试&#xff0c;你做好前期功课&#xff0c;足够了解了吗?下面新东方在线分享一位过来人的经验之谈&#xff0c;给大家最走心的忠告~~▶先来说说复试规则。在复试之前学校会公布学校的复试分数线&…

Hadoop2源码分析-RPC机制初识

1.概述 上一篇博客&#xff0c;讲述Hadoop V2的序列化机制&#xff0c;这为我们学习Hadoop V2的RPC机制奠定了基础。RPC的内容涵盖的信息有点多&#xff0c;包含Hadoop的序列化机制&#xff0c;RPC&#xff0c;代理&#xff0c;NIO等。若对Hadoop序列化不了解的同学&#xff0c…

svn客户端 java_svn纯java客户端SVNKit学习整理(转)

http://www.iteye.com/topic/688217http://blog.csdn.net/feiren127/article/details/7551782把svnkit.jar添加到项目中&#xff0c;用于实现svn功能。 把jackson-all-1.6.2.jar添加到项目中&#xff0c;用于显示树列表。把javaee.ar添加到项目中。新建一个类(SVNUtil.class)实…

贪心 BestCoder Round #39 1001 Delete

题目传送门 1 /*2 贪心水题&#xff1a;找出出现次数>1的次数和res&#xff0c;如果要减去的比res小&#xff0c;那么总的不同的数字tot不会少&#xff1b;3 否则再在tot里减去多余的即为答案4 用set容器也可以做&#xff0c;思路一样5 */6 #include &l…

java this() super()_java中的this和super

this对象本身。public class ThisTest {ThisTest tTest;public ThisTest(){tTest this;}public void test(){System.out.println(this);}public static void main(String arg[]){new ThisTest().test();}}成员方法引用。成员变量引用。public class ThisTest {String name;Str…

配置汇编环境:使用vs2010+MASM

1、将MASM32下载并安装到根目录&#xff08;得到include和lib文件夹&#xff09;&#xff0c;官网即可下载&#xff0c;有64位版本2、配置vs2010 &#xff08;1&#xff09;添加项目 a、新建空白解决方案 b、添加空项目 c、项目属性->生成自定义-&g…

java 抽象类命名_Java的抽象类和接口

一.抽象类首先看抽象方法&#xff1a;抽象方法只有方法签名&#xff0c;没有方法的实现。并且被abstract修饰。 例如&#xff1a; abstract void test();有抽象方法的类只能被定义为抽象类&#xff0c;抽象类里可以没有抽象方法。抽象类的规则&#xff1a;抽象类必须使用abstr…

JSP、Servlet中get请求和post请求的区别总结

在学习JavaWeb最初的开始阶段&#xff0c;大家都会遇到HttpServlet中的doGet和doPost方法。前两天看《Head First Servlets & JSP》看到其中讲关于Servlet中get请求和post请求的区别&#xff0c;现总结如下&#xff1a; 1&#xff1a;请求数据的大小不同。 因为get请求的数…

用java解决约瑟夫循环问题_Java采用循环链表结构求解约瑟夫问题

本文实例讲述了Java采用循环链表结构求解约瑟夫问题的方法。分享给大家供大家参考。具体分析如下&#xff1a;这是第一次java考试的试题&#xff0c;对于没看过链表的同学来说就不会做&#xff0c;现在回头看看&#xff0c;还真不难。约瑟夫问题&#xff1a;有n个人&#xff0c…