zoukankan      html  css  js  c++  java
  • 二、为什么要用MapReduce

    一、为什么要用MapReduce?

      首先MapReduce被广泛应用于日志分析、海量数据的排序、在海量数据中查找特定模式等 场景。而且它非常简单,易于实现且扩展性强。可以通过它编写同事在多台主机上运行的程序,可以使用Python/PHP/C++等非java类语言编写map或reduce程序。还可以在任何安装Hadoop的集群中运行同样的程序,不论这个集群有多少台主机。

    二、MapReduce计算模型

      在Hadoop中,用于执行MapReduce任务的机器角色有两个:

    一个是JobTracker,另一个是TaskTracker。JobTracker是用于调度工作的,TaskTracker是用于执行工作的。而一个Hadoop集群中只有一台JobTracker。

    三、MapReduce的Job

      在Hadoop中,每个MapReduce任务都被初始化为一个job,每个job又可以分为两个阶段:map阶段和reduce阶段。这两个阶段分别用两个函数来表示,也就是map函数和reduce函数。

      map函数接受<key,list of value>形式的输入,然后对value集合进行处理。

      reduce 函数产生0或1个输出。reduce的输出格式也是<key,value>形式的。

  • 相关阅读:
    Oracle简介
    Python 新建程序
    HTML 标记 3 —— CSS
    Dreamweaver 2
    Dreamweaver 1 网页制作
    has-a关系——多重私有继承
    has-a关系——包含对象成员的类
    《使用wxWidgets进行跨平台程序开发》chap02——一个简单的应用程序
    抽象基类(ABC),纯虚函数
    普通类继承
  • 原文地址:https://www.cnblogs.com/drq1/p/8458111.html
Copyright © 2011-2022 走看看