首页 > 其他分享 >MapReduce分布式计算框架的优缺点​

MapReduce分布式计算框架的优缺点​

时间:2022-09-28 10:09:56浏览次数:51  
标签:框架 优缺点 适合 分布式计算 MapReduce 并行计算 数据

       MapReduce是一个可用于大规模数据处理的分布式计算框架,它借助函数式编程及分而治之的设计思想,使编程人员在即使不会分布式编程的情况下,也能够轻松地编写分布式应用程序并运行在分布式系统之上。​

一、MapReduce 是什么

MapReduce 最早是由 Google 公司研究提出的一种面向大规模数据处理的并行计算模型和方法。Google 设计 MapReduce 的初衷主要是为了解决其搜索引擎中大规模网页数据的并行化处理问题. 2004年,Google 发表了一篇关于分布式计算框架 MapReduce 的论文,重点介绍了 MapReduce 的基本原理和设计思想。同年,开源项目 Lucene(搜索索引程序库)和 Nutch(搜索引擎)的创始人Doug Cutting发现 MapReduce 正是其所需要的解决大规模 Web 数据处理的重要技术,模仿Google 的 MapReduce,基于 Java 设计开发了一个后来被称为 Hadoop MapReduce 的开源并行计算框架和系统。​

总的来说,MapReduce是大数据进行并行处理计算模型、框架与平台。具体包含以下3层含义。​

(1)MapReduce是一个并行程序的计算模型与方法。​

MapReduce是一个解决大规模数据的并行计算的编程模型。这个编程模型将大数据处理过程主要拆分为Map(映射)和Reduce(化简)两个模块,提供更为简单的并行的设计模型,即使编程人员不了解分布式计算框架的内部运行机制,只要够参照的接口,可以完成海量数据的处理。​

(2)MapReduce是一个并行程序运行的软件框架。​

MapReduce可以自动化完成计算任务、自动分配和执行任务以及收集计算结果将数据分布式存储、数据通信、容错处理等并行计算涉及的很多系统底层的复杂细节问题都交由MapReduce软件框架统一处理,大大减少了软件开发人员的负担。​

(3)MapReduce是一个基于集群的高性能并行计算平台。​

Hadoop 中的 MapReduce是一个易于使用的软件框架,基于此框架编写出来的应用程序能够运行在由上千个商用机器组成的大型集群上,并以一种可靠的方式并行处理TB或PB级别的数据集。​

二、MapReduce的优缺点

1.MapReduce的优点

在大数据和人工智能时代,MapReduce如此受欢迎主要因为它具有以下几个优点。​

● MapReduce 易于编程。通过简单接口完成分布式程序的编写,可运行在众多服务器组成的集群上。即编写一个分布式程序与编写一个简单的串行程序是一模一样的。也正是易于使用的特点使得​

● 良好的扩展性。出现资源不足的情况,可以直接增加机器数量来扩展集群的计算能力这与HDFS通过增加机器扩展集群存储能力的道理是一样的。​

● 高容错性。高容错性提现在MapReduce能使程序能够部署在廉价商用服务器上。如果其中一台机器故障,自动切换到其他节点,而且这个过程不需要人工参与,完全在​

● MapReduce 适合PB级以上海量数据的离线处理。​

2.MapReduce的缺点

MapReduce 虽然具有很多优势,但也有不适用的场景,即有些场景下并不适合 MapReduce 来处理,主要表现在以下几个方面。​

  • 不适合实时计算。MapReduce 无法毫秒级内返回结果。MapReduct 并不适合数据的在线处理。​
  • 不适合进行流式计算。MapReduce设计之初输入数据集是静态的,不适合输入动态数据,不适合即流式计算。​
  • 不适合程序之间的依赖性,MapReduce的处理方法是将使用后每个 MapReduce 作业的输出结果写入磁盘,这样会造成大量的磁盘 IO,导致性能非常低下。​

尽管但也是目前最为成功、最易于使用的大数据并行处理技术。​


标签:框架,优缺点,适合,分布式计算,MapReduce,并行计算,数据
From: https://blog.51cto.com/u_15735635/5718370

相关文章

  • MapReduce分布式计算框架的优缺点
    MapReduce是一个可用于大规模数据处理的分布式计算框架,它借助函数式编程及分而治之的设计思想,使编程人员在即使不会分布式编程的情况下,也能够轻松地编写分布式应用程序并运......
  • MIT6.824 Distributed-System(Lab1)-MapReduce
    Labaddress:http://nil.csail.mit.edu/6.824/2020/labs/lab-mr.htmlpaper:MapReduce:SimplifiedDataProcessingonLargeClustersJob:Yourjobistoimplement......
  • 今日部分知识点总结———SQL注入,hooks的优缺点,cookies,xxxStorage的区别,BFC,合并二叉
    SQL注入在浏览器页面用户提交数据处,输入特定的字符实现sql语句的篡改,从而对数据库进行操作。比如在一个登录界面,要求输入用户名和密码,可以这样输入实现免帐号登录;用户名......
  • MapReduce学习
    笔记记录   ......
  • 谷歌MapReduce经典论文翻译(中英对照)
    MapReduce:SimplifiedDataProcessingonLargeClusters(MapReduce:简化大型集群下的数据处理)作者:JeffreyDeanandSanjayGhemawatAbstract(摘要)MapReduceisapr......
  • 我眼中的大数据(三)——MapReduce
    ​这次来聊聊Hadoop中使用广泛的分布式计算方案——MapReduce。MapReduce是一种编程模型,还是一个分布式计算框架。MapReduce作为一种编程模型功能强大,使用简单。运算内容......
  • BigData——MapReduce
    MapReduce上图是MapReduce的任务处理过程概述MapReduce是一种分布式计算模型,由Google提出,主要用于搜索领域,解决海量数据的计算问题.MapReduce是分布式运行的,由两个阶......
  • 什么是SPA页面,它的优缺点?
    什么是SPAspa是单页面应用(singlepagewebapplication),浏览器会一开始就加载所需要的html、css、javascript。一旦页面加载完毕,整个页面就不会因为用户的操作而重新加......
  • mapreduce和yarn集群
    mapreduce: 先分再合,分而治之      分布式计算概念:计算方式,与集中式计算相对。将应用拆分成小的部分,分配给多台计算机处理,mapreduce是分布式的计算框架。......
  • 27-MapReduce架构设计和企业最佳案例(上)_ev
            MapReduce流程图    播客  ......