热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

hadoop的组成

hadoop1.x组成:MapReduce(计算资源调度)  HDFS(数据存储)  Common࿰

hadoop1.x组成:

  MapReduce(计算+资源调度)
  HDFS(数据存储)
  Common(辅助工具,HDFS和MR共有的常用的工具包模块!)

hadoop1.x时:MapReduce同时处理业务逻辑运算和资源调度,耦合性较大

hadoop2.x组成:

  MapReduce(计算)
  Yarn(资源调度)
  HDFS(数据存储)
  Common(辅助工具,HDFS和MR共有的常用的工具包模块!)

  hadoop2.x增加了Yarn,Yarn只负责资源调度,MapReduce只负责运算
  将资源调度和管理进行分离!由统一的资源调度平台YARN进行大数据计算资源的调度!
  提升了Hadoop的通用性!Hadoop搭建的集群中的计算资源,不仅可以运行Hadoop中的MR程序!也可以运行其他计算框架的程序!

HDFS

负责大数据的存储
  核心进程:
  必须进程:
   Namenode(1个): 负责文件,名称等元数据(属性信息)的存储!
   文件名,大小,文件切分了多少块(block),创建和修改时间等!
    职责: 接受客户端的请求!
    接受DN的请求!
    向DN分配任务!

   Datanode(N个): 负责文件中数据的存储!
    职责: 负责接受NM分配的任务!
    负责数据块(block)的管理(读,写)!

  可选进程:
   SecondaryNamenode(N个): 负责辅助NameNode工作!

MapReduce

  MapReduce(编程规范): 程序中有Mapper(简单处理)和Reducer(合并)

  遵循MapReduce的编程规范,编写的程序,打包后,称为一个Job(任务)!
  Job需要提交到YARN上,向YARN申请计算资源,运行Job中的Task(进程)!
  Job会先创建一个进程MRAppMaster(mapreduce 应用管理者),由MRAppMaster向YARN申请资源!
  MRAppMaster负责监控Job中各个Task运行情况,进行容错管理!

YARN

  YARN负责集群中所有计算资源的管理和调度!

   常见进程:
    ResourceManager(1个): 负责整个集群所有资源的管理!
     职责: 负责接受客户端的提交Job的请求!
     负责向NM分配任务!
     负责接收NM上报的信息!

    NodeManager(N个): 负责单台计算机所有资源的管理!
     职责: 负责和RM进行通信,上报本机中的可用资源!
     负责领取RM分配的任务!
     负责为Job中的每个Task分配计算资源!

  概念:
   Container(容器): NodeManager为Job的某个Task分配了2个CPU和2G内存的计算资源!
   为了防止当前Task在使用这些资源期间,被其他的task抢占资源!
   将计算资源,封装到一个Container中,在Container中的资源,会被暂时隔离!
   无法被其他进程所抢占!

   当前Task运行结束后,当前Container中的资源会被释放!允许其他task来使用!


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • Hadoop源码解析1Hadoop工程包架构解析
    1 Hadoop中各工程包依赖简述   Google的核心竞争技术是它的计算平台。Google的大牛们用了下面5篇文章,介绍了它们的计算设施。   GoogleCluster:ht ... [详细]
  • mapreduce源码分析总结
    这篇文章总结的非常到位,故而转之一MapReduce概述MapReduce是一个用于大规模数据处理的分布式计算模型,它最初是由Google工程师设计并实现的ÿ ... [详细]
  • MR程序的几种提交运行模式本地模型运行1在windows的eclipse里面直接运行main方法,就会将job提交给本地执行器localjobrunner执行-- ... [详细]
  • Kylin 单节点安装
    软件环境Hadoop:2.7,3.1(sincev2.5)Hive:0.13-1.2.1HBase:1.1,2.0(sincev2.5)Spark(optional)2.3.0K ... [详细]
  •        在搭建Hadoop环境之前,请先阅读如下博文,把搭建Hadoop环境之前的准备工作做好,博文如下:       1、CentOS6.7下安装JDK,地址:http:b ... [详细]
  • 前言折腾了一段时间hadoop的部署管理,写下此系列博客记录一下。为了避免各位做部署这种重复性的劳动,我已经把部署的步骤写成脚本,各位只需要按着本文把脚本执行完,整个环境基本就部署 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了H5游戏性能优化和调试技巧,包括从问题表象出发进行优化、排除外部问题导致的卡顿、帧率设定、减少drawcall的方法、UI优化和图集渲染等八个理念。对于游戏程序员来说,解决游戏性能问题是一个关键的任务,本文提供了一些有用的参考价值。摘要长度为183字。 ... [详细]
  • 伸缩性|发生_分布式文件系统设计,该从哪些方面考虑?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了分布式文件系统设计,该从哪些方面考虑?相关的知识,希望对你有一定的参考价值。点击上方关注“ ... [详细]
  • MapReduce工作流程最详细解释
    MapReduce是我们再进行离线大数据处理的时候经常要使用的计算模型,MapReduce的计算过程被封装的很好,我们只用使用Map和Reduce函数,所以对其整体的计算过程不是太 ... [详细]
  • MapReduce 切片机制源码分析
     总体来说大概有以下2个大的步骤1.连接集群(yarnrunner或者是localjobrunner)2.submitter.submitJobInternal()在该方法中会创建 ... [详细]
  • Azkaban(三)Azkaban的使用
    界面介绍首页有四个菜单projects:最重要的部分,创建一个工程,所有flows将在工程中运行。scheduling:显示定时任务executing:显示当前运行的任务histo ... [详细]
  • Java开发实战讲解!字节跳动三场技术面+HR面
    二、回顾整理阿里面试题基本就这样了,还有一些零星的问题想不起来了,答案也整理出来了。自我介绍JVM如何加载一个类的过程,双亲委派模型中有 ... [详细]
author-avatar
辰小坏2602938945
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有