大数据:大数据-hadoop-MapReduce计算流程

    作者:小水懒更新于: 2020-04-11 22:03:43

      Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

      Hadoop实现了一个分布式文件系统(HadoopDistributedFileSystem),简称HDFS。

      MapReduce计算流程

      1首先是通过程序员所编写的MR程序通过命令行本地提交或者IDE远程提交

      2一个MR程序就是一个Job,Job信息会给Resourcemanger,向Resourcemanger注册信息

      3在注册通过后,Job会拷贝相关的资源信息(从HDFS中)

      4紧接着会向Resourcemanger提交完整的Job信息(包括资源信息)

      5aResourcemanger会通过提交的Job信息,计算出Job所需的资源,为Job分配Container资源

      5b计算资源会分发给对应的NodeManger,NodeManager会创建一个MRAppMaster

      6MRAppMaster初始化Job

      7获取输入切片信息

      8MRAppMaster向ResourceManager请求资源

      9a启动计算资源(连接到对应的资源所在NodeManager)

      9b启动YARNChild

      10从文件系统中获取完整的Job信息

      11启动对应的Maptask或者ReduceTask进程,执行计算。

      HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streamingAccess)文件系统中的数据。

      Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

课课家教育

未登录

1