hadoop3.0新特性

1、概要

1. 基于jdk1.8(最低版本要求)

2. mr采用基于内存的计算,提升性能(快spark 10倍)

3. hdfs 通过最近black块计算,加快数据获取速度(块大小:256M)

4. 支持多NameNode(实现了更加可靠的HA)

5. 引入EC纠删码技术(EC:Erasure Coding) 存储空间节省50%

6. 精简了内核

7.hadoop shell脚本重构

8.默认端口修改

9.支持数据的balancer(平衡)Intra-datanode均衡器

10. 基于API来配置 Capacity Scheduler 队列的配置

大数据课程学习链接

领取相关资料可以加小编微信获取哦:mipi946

2、主要变动介绍总架构的改变>> 1. Shell脚本重写(1)增加了参数冲突检测,避免重复定义和冗余参数

(2)CLASSPATH, JAVA_LIBRARY_PATH, and LD_LIBRARY_PATH等参数的去重,缩短环境变量

(3)shell脚本重构,将更多的代码加入function中,提供重载,删除重复代码,便于测试

(4)脚本清理和简化

(5)尽可能与当前系统保持兼容

(6)提供一份Hadoop环境变量列表

(7) 提供一份Hadoop环境变量列表  Shell脚本现在支持一个–debug选项,它将报告有关各种环境变量,java选项,classpath等构造的基本信息,以帮助进行配置调试。

(8) 增加了distchjnipath子命令到hadoop命令。

(9) 触发ssh连接的操作现在可以使用pdsh(如果已安装)。$ {HADOOP \ _SSH \ _OPTS}仍然被应用。

(10) 一个名为–buildpaths的新选项将尝试将开发人员构建目录添加到类路径以允许在源代码树测试中。

(11) 守护进程已经通过–daemon选项从* -daemon.sh移动到了bin命令。只需使用–daemon启动一个守护进程

>> 2. 精简内核剔除了过期的API和实现,废弃hftp转由webhdfs替代,将默认组件实现替换成最高效的实现(比如将FileOutputCommitter缺省实现换为v2版本,废除hftp转由webhdfs替代,移除Hadoop子实现序列化库org.apache.hadoop.Records

>> 3. Classpath isolation防止不同版本jar包冲突防止不同版本jar包冲突,例如google guava在混合使用hadoop、hbase、spark时出现冲突。mapreduce有参数控制忽略hadoop环境中的jar,而使用用户提交的第三方jar,但提交spark任务却不能解决此问题,需要在自己的jar包中重写需要的第三方类或者整个spark环境升级。classpath isolation用户可以很方便的选择自己需要的第三方依赖包。

>> 4. jdk最低版本1.8>> 5. 支持MicrosoftAzure Data Lake文件系统>> 6. 部分服务默认端口修改不再绑定到Linux临时端口 (HDFS-9427,HADOOP-12811)

Kms server ports: 16000 –> 9600 (原先的16000与HMaster端口冲突)

端口整理2.x3.x

NN portsnamenode ports8020/90009820

nn http ui500709870

nn https ui504709871

SNN portssnn http500919869

snn http ui500909868

DN portsdn ipc500209867

dn ipc500109866

dn http ui500759864

dn https ui504759865

Kms server ports16000

HMaster端口冲突

160009600

HDFS新功能>>1. 纠删码将数据存储空间节省50%hadoop-3.0之前,HDFS存储方式为每一份数据存储3份,这也使得存储利用率仅为1/3,

hadoop-3.0引入纠删码技术(EC技术),实现1份数据+0.5份冗余校验数据存储方式

Erasure coding纠删码技术简称EC,是一种数据保护技术.最早用于通信行业中数据传输中的数据恢复,是一种编码容错技术.他通过在原始数据中加入新的校验数据,使得各个部分的数据产生关联性.在一定范围的数据出错情况下,通过纠删码技术都可以进行恢复.EC技术可以防止数据丢失,又可以解决HDFS存储空间翻倍的问题。

创建文件时,将从最近的祖先目录继承EC策略,以确定其块如何存储。与3路复制相比,默认的EC策略可以节省50%的存储空间,同时还可以承受更多的存储故障。

建议EC存储用于冷数据,由于冷数据确实数量大,可以减少副本从而降低存储空间,另外冷数据稳定,一旦需要恢复数据,对业务不会有太大影响。

>>2. 基于HDFS路由器的联合HDFS基于路由器的联合会添加一个RPC路由层,提供多个HDFS命名空间的联合视图。这与现有ViewFsHDFS联合功能类似),不同之处在于安装表由服务器端由路由层而不是客户端进行管理。这简化了对现有HDFS客户端的联合集群的访问。与现有ViewFsHDFS联合功能类似),不同之处在于安装表由服务器端由路由层而不是客户端进行管理。这简化了对现有HDFS客户端的联合集群的访问。

>>3. 支持多个NameNode但是Active的NameNode始终只有1个,余下的都是Standby。 Standby NN会不断与JN同步,保证自己获取最新的editlog,并将edits同步到自己维护的image中去,这样便可以实现热备,在发生failover的时候,立马切换成active状态,对外提供服务。同时,JN只允许一个active状态的NN写入

>>4. Disk Balancer支持单个Datanode上,不同硬盘间的数据balancer。老版本的hadoop只支持在Datanode之间进行balancer,每个节点内部不同硬盘之间若发生了数据不平衡,则没有一个好的办法进行处理。现在可以通过hdfs diskbalancer命令,进行节点内部硬盘间的数据平衡。该功能默认是关闭的,需要手动设置参数dfs.disk.balancer.enabled为true来开启。

MapReduce新功能与特性>>1. MapReduce任务级本地优化(引入Native Task加速计算)为MapReduce增加了C/C++的map output collector实现(包括Spill,Sort和IFile等),通过作业级别参数调整就可切换到该实现上。

本地库将使用-Pnative自动生成。用户可以通过设置mapreduce.job.map.output.collector.class = org.apache.hadoop.mapred来选择新的收集器。

nativetask.NativeMapOutputCollectorDelegator的作业配置。对于shuffle密集型工作,这可能会提高30%以上的速度。

>>2. MapReduce内存参数自动推断在Hadoop 2.0中,为MapReduce作业设置内存参数非常繁琐,涉及到两个参数:mapreduce.{map,reduce}.memory.mbmapreduce.{map,reduce}.java.opts,一旦设置不合理,则会使得内存资源浪费严重,比如将前者设置为4096MB,但后者却是“-Xmx2g”,则剩余2g实际上无法让java heap使用到。

有了这个JIRA,我们建议根据可以调整的经验比例自动设置Xmx。如果用户提供,Xmx不会自动更改。

YARN新功能与特性

>> 1. YARN Timeline Service v.2Yarn Timeline Service V2提供一个通用的应用程序共享信息和共享存储模块。可以将metrics等信息保存。可以实现分布式writer实例和一个可伸缩的存储模块。同时,v2版本在稳定性和性能上面也做出了提升,原先版本不适用于大集群,v2版本使用hbase取代了原先的leveldb作为后台的存储工具。

>> 2. YARN资源类型YARN资源模型已被推广为支持用户定义的可数资源类型,超越CPU和内存。例如,集群管理员可以定义诸如GPU,软件许可证或本地附加存储器之类的资源。YARN任务可以根据这些资源的可用性进行调度。

>> 3. Hadoop守护进程和MapReduce任务的堆内存管理发生了一系列变化主机内存大小可以自动调整,HADOOP_HEAPSIZE已弃用。

所需的堆大小不再需要通过任务配置和Java选项实现。已经指定的现有配置不受此更改影响。

>> 4.支持随机container和分布式调度已经引入了ExecutionType的概念,从而应用程序现在可以请求执行类型为Opportunistic的容器。即使在调度时没有可用的资源,也可以调度此类型的容器在NM处执行。在这种情况下,这些容器将在NM处排队,等待资源启动。机会容器的优先级低于默认的保证容器,因此如果需要的话,为抢占保证容器而腾出空间。这应该会提高群集利用率。

机会容器默认由中央RM分配,但是也添加了支持以允许机会容器由分布式调度器分配,该分布式调度器被实现为AMRMProtocol拦截器。

>> 5. S3Guard:S3A文件系统客户端的一致性和元数据缓存为Amazon S3存储的S3A客户端添加了一个可选功能:能够将DynamoDB表用作文件和目录元数据的快速一致存储。

>> 6. Capacity Scheduler队列配置的基于API的配置容量调度程序的OrgQueue扩展提供了一种编程方式,通过提供用户可以调用的REST API来修改队列配置来更改配置。这使管理员可以在队列的administrators_queue ACL中自动执行队列配置管理。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,894评论 2 89
  • 一、系统参数配置优化 1、系统内核参数优化配置 修改文件/etc/sysctl.conf,添加如下配置,然后执行s...
    张伟科阅读 3,721评论 0 14
  • Zookeeper用于集群主备切换。 YARN让集群具备更好的扩展性。 Spark没有存储能力。 Spark的Ma...
    Yobhel阅读 7,236评论 0 34
  • 所谓的世俗伦理,也未必真能指引人们走上正确的道路。大多数情况下,那只是社会上的一般想法,没什么深刻的道理。 大家好...
    二十三丝音乐阅读 5,796评论 0 0
  • 一幅画囊 被岁月涂雅 嵌在豪华的会晤峰会上 啜吸精华 灵动的路人 拿出心灵甘果 奉仰给他 不相信自己 有冒昧的傻 ...
    一池凹水凸龙阅读 173评论 0 4