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处理并保存输出的数据

  • 相关阅读:
    TCP协议
    数据包以及数据传输
    网络模型
    Executors常见的线程池创建以及其问题
    线程池
    阻塞队列和死锁
    ConcurrentHashMap
    ReentrantLock,公平性锁和非公平性锁
    Lock
    jQuery如何获取table中每一行的数据并发送给后端?
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/13521636.html
Copyright © 2011-2022 走看看