Apache  hadoop 项目组最新消息,hadoop3.x以后将会调整方案架构,将Mapreduce 基于内存+io+磁盘,共同处理数据。

其实最大改变的是hdfs,hdfs 通过最近black块计算,根据最近计算原则,本地black块,加入到内存,先计算,通过IO,共享内存计算区域,最后快速形成计算结果。

1. Hadoop 3.0简介

Hadoop 2.0是基于JDK 1.7开发的,而JDK 1.7在2015年4月已停止更新,这直接迫使Hadoop社区基于JDK 1.8重新发布一个新的Hadoop版本,而这正是hadoop 3.0。

Hadoop 3.0的alpha版预计今年夏天发布,GA版本11月或12月发布。

Hadoop 3.0中引入了一些重要的功能和优化,包括HDFS 可擦除编码、多Namenode支持、MR Native Task优化、YARN基于cgroup的内存和磁盘IO隔离、YARN container resizing等。

2. Hadoop 3.0新特性

Hadoop 3.0在功能和性能方面,对hadoop内核进行了多项重大改进,主要包括:

2.1 Hadoop Common

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

(2)Classpath isolation以防止不同版本jar包冲突,比如google Guava在混合使用Hadoop、HBase和Spark时,很容易产生冲突。(https://issues.apache.org/jira/browse/HADOOP-11656)

(3)Shell脚本重构。 Hadoop 3.0对Hadoop的管理脚本进行了重构,修复了大量bug,增加了新特性,支持动态命令等。https://issues.apache.org/jira/browse/HADOOP-9902

2.2 Hadoop HDFS

(1)HDFS支持数据的擦除编码,这使得HDFS在不降低可靠性的前提下,节省一半存储空间。(https://issues.apache.org/jira/browse/HDFS-7285)

(2)多NameNode支持,即支持一个集群中,一个active、多个standby namenode部署方式。注:多ResourceManager特性在hadoop 2.0中已经支持。(https://issues.apache.org/jira/browse/HDFS-6440)

2.3 Hadoop MapReduce

(1)Tasknative优化。为MapReduce增加了C/C++的map output collector实现(包括Spill,Sort和IFile等),通过作业级别参数调整就可切换到该实现上。对于shuffle密集型应用,其性能可提高约30%。(https://issues.apache.org/jira/browse/MAPREDUCE-2841)

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

2.4 Hadoop YARN

(1)基于cgroup的内存隔离和IO Disk隔离(https://issues.apache.org/jira/browse/YARN-2619)

(2)用curator实现RM leader选举(https://issues.apache.org/jira/browse/YARN-4438)

(3)containerresizing(https://issues.apache.org/jira/browse/YARN-1197)

(4)Timelineserver next generation (https://issues.apache.org/jira/browse/YARN-2928)

以下是hadoop-3.0的最新参数

hadoop-3.0

  • HADOOP

    • Move to JDK8+
    • Classpath isolation on by default HADOOP-11656

    • Shell script rewrite HADOOP-9902

    • Move default ports out of ephemeral range HDFS-9427

  • HDFS
    • Removal of hftp in favor of webhdfs HDFS-5570

    • Support for more than two standby NameNodes HDFS-6440

    • Support for Erasure Codes in HDFS HDFS-7285

  • YARN
  • MAPREDUCE
    • Derive heap size or mapreduce.*.memory.mb automatically MAPREDUCE-5785

在HDFS-7285中,实现了Erasure Coding这个新功能.鉴于此功能还远没有到发布的阶段,可能后面此块相关的代码还会进行进一步的改造,因此只是做一个所谓的预分析,帮助大家提前了解Hadoop社区目前是如何实现这一功能的.本人之前也没有接触过Erasure Coding技术,中间过程也确实有些偶然,相信本文可以带给大家收获.

Erasure coding纠删码技术简称EC,是一种数据保护技术.最早用于通信行业中数据传输中的数据恢复,是一种编码容错技术.他通过在原始数据中加入新的校验数据,使得各个部分的数据产生关联性.在一定范围的数据出错情况下,通过纠删码技术都可以进行恢复.下面结合图片进行简单的演示,首先有原始数据n个,然后加入m个校验数据块.如下图所示:

Parity部分就是校验数据块,我们把一行数据块组成为Stripe条带,每行条带由n个数据块和m个校验块组成.原始数据块和校验数据块都可以通过现有的数据块进行恢复,原则如下:

如果校验数据块发生错误,通过对原始数据块进行编码重新生成如果原始数据块发生错误, 通过校验数据块的解码可以重新生成。

而且m和n的值并不是固定不变的,可以进行相应调整。可能有人会好奇,这其中到底是什么原理呢? 其实道理很简单,你把上面这图看成矩阵,由于矩阵的运算具有可逆性,所以就能使数据进行恢复,给出一张标准的矩阵相乘图,大家可以将二者关联。

3. Hadoop3.0 总结

Hadoop 3.0的alpha版预计今年夏天发布,GA版本11月或12月发布。

Hadoop 3.0中引入了一些重要的功能和优化,包括HDFS 可擦除编码、多Namenode支持、MR Native Task优化、YARN基于cgroup的内存和磁盘IO隔离、YARN container resizing等。

hadoop3新特性相关推荐

  1. Hadoop3.0的新特性

    转载:http://blog.csdn.net/sinat_31726559/article/details/52103229  点击阅读原文 ---------------------------- ...

  2. hadoop3.0新特性介绍

    hadoop3.0新特性介绍 1. 基于jdk1.8(最低版本要求) 2. mr采用基于内存的计算,提升性能(快spark 10倍) 3. hdfs 通过最近black块计算,加快数据获取速度(块大小 ...

  3. 大数据哔哔集20210106 - Hadoop3.0有哪些新特性

    [大数据哔哔集]是小编发起的每日大数据圈子最前沿.高频.有难度的面试题目以及资讯等. 精简版总结 1.JDK版本的最低依赖从1.7变成了1.82.HDFS支持Erasure Encoding3.Tim ...

  4. Hadoop3x,Hadoop2x新特性

    一.Hadoop2x的新特性 1.集群间的数据拷贝 (1)scp实现两个远程主机之间的文件复制 scp -r hello.txt root@hadoop100:/user/zheng/hello.tx ...

  5. 7.Hive性能优化及Hive3新特性

    1.Hive表设计优化 分区表优化查询速度 分桶表优化join速度 索引优化(在Hive3后移除,了解即可) 2.Hive表数据优化 2.1 文件格式 概述 Hive数据存储的本质市HDFS,所有数据 ...

  6. 我要学ASP.NET MVC 3.0(一): MVC 3.0 的新特性

    摘要 MVC经过其1.0和2.0版本的发展,现在已经到了3.0的领军时代,随着技术的不断改进,MVC也越来越成熟.使开发也变得简洁人性化艺术化. 园子里有很多大鸟都对MVC了如指掌,面对问题犹同孙悟空 ...

  7. .NET 4.0 Interop新特性ICustomQueryInterface (转载)

    .NET 4.0 Interop新特性ICustomQueryInterface 在.NET Framework v4.0发布的新功能中,在名字空间System.Runtime.InteropServ ...

  8. oracle如何查询虚拟列,Oracle11g新特性之--虚拟列(VirtualColumn)

    Oracle 11g新特性之--虚拟列(Virtual Column) Oracle 11G虚拟列Virtual Column介绍 在老的 Oracle 版本,当我们需要使用表达式或者一些计算公式时, ...

  9. mysql8导入 psc 没有数据_新特性解读 | MySQL 8.0.22 任意格式数据导入

    作者:杨涛涛 资深数据库专家,专研 MySQL 十余年.擅长 MySQL.PostgreSQL.MongoDB 等开源数据库相关的备份恢复.SQL 调优.监控运维.高可用架构设计等.目前任职于爱可生, ...

  10. mysql query browswer_MySQL数据库新特性之存储过程入门教程

    MySQL数据库新特性之存储过程入门教程 在MySQL 5中,终于引入了存储过程这一新特性,这将大大增强MYSQL的数据库处理能力.在本文中将指导读者快速掌握MySQL 5的存储过程的基本知识,带领用 ...

最新文章

  1. 小程序云开发,判断数据库表的两个字段匹配 云开发数据库匹配之 and 和 or 的配合使用
  2. python将输出结果写入csv,在Python中将彩色输出写入CSV文件
  3. 安卓-04-实例01-XML布局UI界面
  4. 在屏幕上将1234逐位打印出来1,2,3,4
  5. python导入sas数据集_运用import过程进行SAS数据导入完全实用教程
  6. PHP rewinddir()函数与示例
  7. gawk如何在win7安装_电脑怎样安装win7系统
  8. v-for和v-if一起使用的坑。。。
  9. 查找子字符串----KMP算法深入剖析
  10. java人民币金额大写_Java人民币金额数字转换成大写
  11. MyEclipse 安装教程
  12. Homekit智能开关/定时控制
  13. 4.1图像分割之区域生长法
  14. chrome及Firefox各版本浏览器下载地址
  15. LevelDb(二):LevelDb整体架构
  16. windows 下 nextcloud 的偏保姆级搭建教程
  17. node.js+小程序基于微信小程序的校园失物招领系统毕业设计源码072343
  18. R 语言 state 数据集的可视化
  19. 无胁科技-TVD每日漏洞情报-2022-9-29
  20. 【NLP】第4章 从头开始预训练 RoBERTa 模型

热门文章

  1. 计算机期刊在线阅读,2010年计算机领域SCI收录期刊
  2. r语言中形成的c函数,R语言_par()函数用法
  3. webp格式怎么改png?如何将webp转换格式?
  4. Unity模拟榴弹运动轨迹
  5. R语言学习笔记四:秩和检验
  6. Unity 之 发布 WebGl 遇到的问题
  7. 运营实操:亚马逊运营的顶级思维
  8. 基于myscript.js的web手写板(支持中文识别)
  9. 关于两种运行sh的方式: ./myscript.ksh and . ./myscript.ksh
  10. VSCode Server installation process already in progress - waiting and retrying