zoukankan      html  css  js  c++  java
  • MapReduce基础介绍

    1.概述:

    MapReduce的和心思想:将复杂的任务分解成小任务并行计算,再对所有小任务的结果进行汇总。

    2.MapReduce编程规范

    一共有8个步骤

    Map阶段:切分数据,进行并行计算

    设置InputFormat类,将数据切分成键值对<k1,v1>输入到第二步。键值对代表的含义:k1代表各行文本相较于文本开头的偏移量,v1代表这行数据

    自定义Map逻辑,将K1,v1转化成k2,v2

    Shuffle阶段:

    将k2,v2打上一个标记,将键值对按照键值对进行分类(分区)

    对不同分区的键值对按照key排序

    (可选)对排序后的键值对进行初步规约(初步聚合),减少网络数据的拷贝和传输

    对数据进行分组,key相同,将其value放入一个集合中

    Reduce阶段:

    将多个Map任务的结果进行排序以及合并,编写函数实现自己的逻辑,将键值对转成K3,V3的形式输出

    设置OutputFormat处理并保存输出的数据

  • 相关阅读:
    spider
    python 2.X
    django 创建项目
    NameError: name 'pip' is not defined
    异常捕获
    @property
    node-Telnet
    ES6-模块化
    高级排序算法之双路快速排序
    高级排序算法之快速排序
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/13521636.html
Copyright © 2011-2022 走看看