大数据 -- MapReduce

栏目: 编程工具 · 发布时间: 6年前

大数据 -- MapReduce

石器时代

  1. 石器时代:MapReduce诞生之前的时期
  2. 数据的大规模处理问题早已存在,但数据的大规模处理技术还处于彷徨阶段
    • 每个公司或个人都可能有自己的一套 工具 处理数据,但没有提炼抽象出一个系统的方法

青铜时代

  1. 2003年,MapReduce的诞生标志了超大规模数据处理的第一次革命
  2. 论文:《MapReduce: Simplified Data Processing on Large Clusters》
    • Jeff Dean和Sanjay Ghemawat从纷繁复杂的业务逻辑中,抽象出通用的编程模型:Map和Reduce
  3. 后来的Hadoop是对GFS、BigTable、MapReduce的开源实现

蒸汽机时代

  1. 从2016年开始,Google在新员工的培训中把MapReduce替换成内部称为 FlumeJava 的数据处理技术
  2. FlumeJava不等同于Apache Flume,这标志着青铜时代的终结,同时标志着蒸汽机时代的开始
  3. Google FlumeJava对应的开源版本为 Apache Beam

MapReduce的缺点

高昂的维护成本

  1. 使用MapReduce,需要严格地遵循分步的Map和Reduce步骤
  2. 当构造复杂的处理架构时,往往需要 协调 多个Map和多个Reduce任务
  3. 但是每一步的MapReduce都有可能出错,为了处理这些异常,很多人开始设计自己的 协调系统 ,大大 增加整个系统的复杂度
  4. 真实的商业MapReduce场景 极端复杂
    • 在应用过程中,每个MapReduce任务都可能出错,都需要重试和异常处理的机制
    • 而协调这些子MapReduce的任务往往需要与业务逻辑 紧密耦合 的状态机

时间性能差

  1. MapReduce性能优化配置非常复杂,Google关于MapReduce的性能优化手册有500多页
  2. Google曾在2007年到2012年做过对1PB数据的大规模 排序 实验,用来测试MapReduce的性能
    • 2007年为12小时,2012年为0.5小时,Google花了5年的时间才不断优化了一个MapReduce流程的效率

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序设计语言

程序设计语言

斯科特 / 裘宗燕 / 电子工业出版社 / 2007-6 / 99.00元

★列为全球上百所大学标准教材和首席参考书! ★图书馆必备典藏,作者Michael L.Scott 是计算机领域的著名学者,译者是北京大学的裘宗燕教授,他熟悉专业,译笔流畅,因此,这是一本难得的著、译双馨的佳作。 这是一本很有特色的教材,其核心是讨论程序设计语言的工作原理和技术。本书融合了传统的程序设计语言教科书和编译教科书的有关知识,并增加了一些有关汇编层体系结构......一起来看看 《程序设计语言》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具