zoukankan      html  css  js  c++  java
  • Hadoop总结篇之一------开篇

    从今天开始新的系列:Hadoop总结篇

    之前的hadoop学习篇由于是学习过程中随手记下来的一些内容,不具有系统性。所以在这个系列中,将凭着这段时间的研究心得,来记录一些自认为比较重要的东西。

    本系列的主要参考书目是《Hadoop技术内幕:深入解析Yarn架构设计与实现原理》

    比如作业从提交到执行到写出结果,将有一个从浅到深,逐步深入的过程。另外一些开发过程中使用到的比较零碎的东西,将会以外篇的形式记录。

    hadoop版本:2.7.X

    由于是第一篇,那么先来个综述吧。

    学习hadoop我们到底要学些什么?

    在2.x以后,hadoop的体系结构基本按如下三部分划分:

    第一部分就是HDFS文件存储系统。就像我们操作系统的任意一种存储系统一样,这个模块决定了文件存在哪里,怎么存取。只不过他被hadoop集成使用。

    主要的进程有三个: NameNode  DataNode SecondaryName 这三个类,是有main函数的

    第二部分就是计算框架mapreduce,同hadoop1.x里的实现基本一致

    第三部分是调度框架yarn 

    yarn的作用是什么?调度!这个词是精髓,调度资源,调度任务。

    主要进程:resourceManager ApplicationMaster,NodeManager这三个类,也是有main函数的。

    我们要学的,主要就是这三部分内容。

    下面先概括的说一下执行一个job的基本工作流程:

    resourceManager 接到客户端提交的任务,会申请资源(container),本质是在集群中的一台机器上,与其上的NodeManager协调,在资源上启动ApplicationMaster。

    然后把job的控制权交给ApplicationMaster。后者接管后,根据任务的描述信息,去向resourceManager 申请运行task的资源。根据resourceManager 的回馈(资源可用情况描述),与可用的节点(NodeManager)协调,启动task任务。

    task任务启动,那么就使用计算框架内容执行具体的计算了。

    而hdfs文件读取,贯穿于整个job执行阶段。

    这里有必要说明一下,Job 和Application的关系,其实两者是一个东西在不同阶段的描述。提交的时候叫Job,提交后,hadoop系统跑起来后,那就是Application了。就好像一个人小时候在家里,家人都叫乳名。上学后,就用正式名字来称呼了。

     下一篇将从资源调度框架yarn开始后讲起。

  • 相关阅读:
    Hybrid APP基础篇(三)->Hybrid APP之Native和H5页面交互原理
    Hybrid APP基础篇(二)->Native、Hybrid、React Native、Web App方案的分析比较
    Hybrid APP基础篇(一)->什么是Hybrid App
    JavaScript筑基篇(一)->变量、值与对象
    深入Node.js的进程与子进程:从文档到实践
    深入Node模块Buffer-学会操作二进制
    深入Nodejs模块fs
    刷《一年半经验,百度、有赞、阿里面试总结》·手记
    Asp.Net Core 轻松学-被低估的过滤器
    css精灵图&字体图标
  • 原文地址:https://www.cnblogs.com/xyang/p/5545910.html
Copyright © 2011-2022 走看看