前言:Hadoop1.0、Hadoop2.0核心组件及其区别

Hadoop1.0

核心组件

  • HDFS 1.0:单个NameNode、单个Secondary NameNode、多个DataNode
  • MapReduce 1.0

Hadoop1.0的问题

  1. 单点故障

    只有一个NameNode,所有元数据由唯一的NameNode负责管理。如果该NameNode失效,则任何与集群有关的历史操作都将失效,整个集群也就处于基本不可用状态。

  2. 水平扩展性差

    元数据存储在NameNode的内存中,因此集群规模受限于单个NameNode的内存大小

  3. MapReduce1.0扩展性差、低可靠性、资源利用率低、无法执行非MapReduce任务无法支持多种计算框架

  4. 在MRv1中,JobTracker同时兼备了集群资源的管理和作业的调度与控制两大功能,使得JobTracker负载过重,增加了JobTracker失效的风险,造成Hadoop集群的扩展性差低可靠性

    MRv1采用了基于槽位(slot)的资源分配模型,需要为map任务和reduce任务预先配置tasktracker槽位,当一个任务用不完槽位对应的所有资源其他任务也无法使用,而且为map任务保留的slot无法用于reduce任务,这造成资源利用率低

    MRv1中资源管理器JobTracker、TaskTracker耦合高,导致MRv1无法执行非MapReduce任务


Hadoop2.0

核心组件

  • HDFS2.0:双NameNode(Active NameNode、Standby NameNode)、DataNode
    HDFS2.0中存在两个NameNode,为区分两者,将主NameNode称为Active NameNode,将备用NameNode称为Standy NameNode。两者通过Journal Node实现元数据同步。

  • YARN(MapReduce2.0)


Hadoop1.0与Hadoop2.0对比

HDFS角度

Hadoop2.0增加了HDFS HA(高可用)机制,解决了HDFS 1.0中的单点故障问题,通过HA进行Standby NameNode的热备份。

Hadoop2.0增加了HDFS Federation(联邦)水平扩展,支持多个NameNode同时运行,每一个NameNode分管一批目录,然后共享所有DataNode的存储资源,从而解决1.0当中单个NameNode节点内存受限问题。

MapReduce角度

在Hadoop2.0当中增加了YARN框架,针对hadoop1.0中主JobTracker压力太大的不足,把JobTracker资源分配和作业控制分开,利用Resource Manager在NameNode上进行资源管理调度,利用ApplicationMaster进行任务管理和任务监控。由NodeManager替代TaskTracker进行具体任务的执行,因此MapReduce2.0只是一个计算框架。对比hadoop1.0中相关资源的调用全部给Yarn框架管理。


Hadoop3.0

Hadoop2.0之后版本就相对稳定,大部分实际生产环境中都使用的是2.0,Hadoop3.0主要增加了一些性能上的优化和支持:

  1. java运行环境升级为1.8,对低版本的java不再支持
  2. HDFS3.0支持数据的擦除编码,调高存储空间的使用率
  3. 一些默认端口的改变
  4. 增加一些MapReduce的调优

的java不再支持
2. HDFS3.0支持数据的擦除编码,调高存储空间的使用率
3. 一些默认端口的改变
4. 增加一些MapReduce的调优

Hadoop历代版本及其特点相关推荐

  1. spark 3.1.x支持(兼容)hive 1.2.x以及hadoop cdh版本的尝试

    版本 spark 3.1.x hive 1.2.x hadoop 2.6.0-cdh-5.13.1 背景 由于好多公司的yarn集群用的是cdh版本的,用Cloudera Manager管理的.而截止 ...

  2. hadoop各版本下载地址

    地址:https://archive.apache.org/dist/hadoop/common/ 此地址下有hadoop各版本,可直接下载.

  3. hadoop 历史版本下载

    hadoop 历史版本下载 http://archive.apache.org/dist/hadoop/core/

  4. hadoop商业版本选择对比

    记得刚接触到hadoop的时候跟大部分人一样都会抱怨hadoop的安装部署问题,对于一个新手来说这这的是个头疼的问题,可能需要花费一整天的时间才能把分布式环境安装配置好.在刚接触hadoop的一段时间 ...

  5. Hadoop的版本介绍

    0.20.x版本最后演化成了现在的1.0.x版本 0.23.x版本最后演化成了现在的2.x版本 hadoop 1.0 指的是1.x(0.20.x),0.21,0.22 hadoop 2.0 指的是2. ...

  6. hdp对应hadoop的版本_好程序员大数据学习路线分享hadoop的知识总结

    大数据学习路线分享hadoop的知识总结,Hadoop的背景:原生公司是apache, cdh的cloudar公司,hortworks公司提供hdp. 其中apache的发行版本大致有1.x ,2.x ...

  7. hadoop hive集群_失眠大数据专家,基于Hadoop不同版本搭建hive集群(附配置文件)

    前言 本教程采用了两种方案 一种是hive-1.21版本,hadoop版本为hadoop2.6.5 还有一种是主要讲基于hadoop3.x hive的搭建 先来第一种 一.本地方式(内嵌derby) ...

  8. Hadoop不同版本数据传输distcp问题设置

    一:情景 不同版本数据传输的问题 从hadoop2.6传数据到hadoop2.7,遇到了下面问题. 二:报错信息 Caused by: java.io.IOException: Couldn't ru ...

  9. 历代Android开机动画,回顾Windows历代版本开机画面:XP最经典

    最近国外的一个网友上传了历代windows版本的开机画面,不管是声音或者是开机画面每一个版本都是各不相同.下面一起来看看你最喜欢哪一个版本. windows 3.1 Windows 3.1发行于199 ...

最新文章

  1. IC/FPGA校招笔试题分析(三)
  2. Flex前端与Java服务端交互,反射机制挑大旗
  3. ComboBox 强制转换为大写的方法
  4. [css] 什么是视差滚动?如何实现视差滚动的效果?
  5. document.referrer已经可以用于统计搜索来源
  6. gms签名不一致_第三方稳定不掉ios软件企业签名怎么买
  7. mysql服务器级别角色_服务器数据库系列 - MySQL事务隔离级别详解
  8. how tomcat works 读书笔记(一)----------一个简单的webserver
  9. /dev/null空字符设备文件
  10. 单片机双击 长按 c语言,单片机三种按键模式 单击 双击 长按
  11. Java权限管理系统之代码实现(二)
  12. ASP.NET在Web窗体上输出九九乘法表
  13. 读react.js小书 02
  14. 插头DP/轮廓线DP
  15. FlashFXP注册码-FlashFXP密钥
  16. 基于51单片机的四通道交通灯设计
  17. web攻击:XSS跨站脚本
  18. CSS绝对定位、相对定位
  19. 基于pytorch的sque2suqe with attention实现与介绍
  20. (HarmonyOS)JS FA调用Java PA(一)Ability概念及Ability与Internal Ability调用方式

热门文章

  1. 剑指offer:合并两个有序的链表
  2. PAT甲级1071 Speech Patterns :[C++题解]字符串哈希
  3. php的server和location,3、Nginx关于server块和location块的配置
  4. 动态规划 dp01 西瓜分堆问题 c代码
  5. 希尔排序(ShellSort) c源码
  6. 提取文件出错_提取中文、英文和数字,其实很简单
  7. include的两种形式、CPP的搜索路径
  8. 关系到了冰点_疫情下半场,如何修复跌至冰点的亲子关系,让自己和家人活出幸福感?...
  9. python中的decode函数在哪个模块_python3 中encode 和decode的使用方法。
  10. java for循环优化_Java for循环优化