zoukankan      html  css  js  c++  java
  • 笔记:Hadoop权威指南 第2章 关于MapReduce

    一、并行计算遇到的问题

    1、难以将任务分成相同大小的作业块

    2、将独立进程运行的结果合并后,可能还需要进一步的处理

    3、依旧受限于一台计算机的处理能力


    二、MapReduce Job 的一些特点

    1、MapReduce  job 的定义:客户端要执行的一个工作单元,包括输入数据、MapReduce程序、配置信息。Hadoop 将Job 分成若干个小任务(task) 来执行。其中包括 map 任务和 task 任务。


    2、各进程特点:

    (1)、JobTracker 调度TaskTracker 运行任务,协调tasks,监督tasktracker,若出现失败可重新在另外一个tasktracker重新调度任务。

    (2)、将很多分片分配给Map 函数,实现负载均衡;尽量实现数据本地优化。

    (3)、Map 任务将其输出写入本地磁盘,而不是HDFS

    (4)、Reduce 不具备数据本地化优势,单个Reduce 任务的输入通常来自所有 Map 的输出

    (5)、Reduce 的任务数量是特别指定的,而并非由输入大小决定

    (6)、如果有多个Reduce 任务,每个map都会为其输出进行分区 (partion)

    (7)、Reduce 任务中,每个key 对应的 所有 value 记录会发送到同一个Reduce 中

    (8)、shuffle 混洗, 即是map 任务和Reduce 任务之间的数据流,之所以称为shuffle,因为每个Reduce的任务都会来自很多任务

    (9)、combine 可以避免map 任务和reduce 任务之间的数据传输。







  • 相关阅读:
    列表页无限滚动翻页组件--解决性能问题
    UI组件化介绍
    js请求数据的例子
    移动端bug和优化
    利用字符串路径获取对象集合的值
    n个骰子的和,组成数字m的可能
    算法-回形路径
    学习python-跨平台获取键盘事件
    获取数组中多个相加等于0的一组数字 javascript
    一个矩阵 JavaScript
  • 原文地址:https://www.cnblogs.com/leeeee/p/7276218.html
Copyright © 2011-2022 走看看