美文网首页大数据程序员
并行计算框架MapReduce编程模型

并行计算框架MapReduce编程模型

作者: 明明德撩码 | 来源:发表于2018-02-11 23:06 被阅读46次

    思想:分而治之

    • map:对每一部分进行处理
    • reduce :汇总map结果

    map是MapReduce最核心的。

    mapreduce编程模型

    一种分布式计算模型,解决海量数据计算问题

    MapReduce把整个并行计算的过程抽象到两个函数,map和reduce函数。
    map(映射):对一些独立元素组成的列表的每一个元素进行指定操作,可以高度并行。(10T分解分解成1T ,1t就是独立元素)
    Reduce(化简):对一个列表的元素进行合并。
    一个简单的mapreduce程序只需要指定map(),reduece(),input和output,剩下的事就是mapreduce框架的事。

    mapReduce执行过程

    put--map-reduce-output

    在put第一个环节,就把文件以map key value形式处理了。当到第2,3,4环节map、的时候实际得到的是处理好的map key value数据。

    MapReduce将作业的整个运行过程分为两个阶段

    map阶段
    map阶段由一定数量的Maptask组成

    • 数据数据的格式解析 InputFormat
    • 数据数据处理 mapper
    • 数据分组 partitioner

    reduce阶段
    reduce阶段由一定数量的reducetask组成

    • 数据远程copy
    • 数据按需排序
    • 数据处理 reducer
    • 数据输出格式 outputFormat

    编写mapreduce程序

    基于mapReduce模型编写分布式并行程序非常简单,程序员的主要编码工作就是实现map和Reduce函数
    其他并行编程中种种复杂的问题,例如:分布式存储、工作调度、负载、容错、网络通信,均由yarn框架处理

    计算wordcount符合范式

    公式:input--->map-->reduece->output
    bin/hdfs dfs jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.0.jar input output

    key:偏移量 value:行数据

    hadoop yarn --> <0,hadoop yarn>
    hadoop mapreduce --> <11,hadoop mapreduce>
    hadoop hdfs
    yarn nodemanager
    hadoop resourcemanager

    相关文章

      网友评论

        本文标题:并行计算框架MapReduce编程模型

        本文链接:https://www.haomeiwen.com/subject/jjektftx.html