搜索
查看: 2035|回复: 0

Cloudera首席战略官:取代MapReduce 未来会加大Spark等框架投入

[复制链接]

165

主题

5

回帖

1123

积分

金牌会员

积分
1123
发表于 2014-9-26 14:15:22 | 显示全部楼层 |阅读模式

专用分布式查询处理引擎在性能上更优越,MapReduce将被取代的观点,本又将MapReduce与Spark对比,[url=]MapReduce[/url]的高延迟使其无力支持交互式应用,而Spark则可以运行更多的负载,速度更快。Google、Facebook已逐步采用Pregel和Dremel等新框架,MapReduce是否还有前途?Cloudera的首席战略官[url=]Mike Olson[/url]为我们带来了精彩分析。

以下为译文:

MapReduce的高延迟已经成为Hadoop发展的瓶颈,为当前的MapReduce寻找性能更高的替代品已成为Hadoop社区的一个共识。

MapReduce

有关MapReduce框架,最早要追溯到Google,Google将这个框架与灵活、可扩展性存储结合到一起,用以解决各类数据处理和分析任务。后来Doug Cutting和Mike Cafarella在2005年联合创立了Apache Hadoop时,采用的就是这个架构。

类似的项目,比如Apache Pig和Apache Hive,它们将专门的查询转化成可以运行在多功能MapReduce框架上的任务,同时也继承了MapReduce的可扩展性、容错能力、良好的吞吐能力还有糟糕的延迟,特别是Hive,延迟使其无力应付交互式应用。

关于MapReduce的抱怨使人们对企业数据中心和Hadoop项目的热情渐渐减少,MapReduce延迟太高,批处理模式响应也难以应对大量需要处理分析数据的应用。

Hadoop生态圈需要的是一个比MapReduce更加强大、更加灵活、更具实时性的系统。

Spark

如今MapReduce的主要替代者是Apache Spark。和MapReduce一样,它也是一个多功能引擎,但是Spark设计之初就考虑到运行更多的负载,而且速度更快。

最初的MapReduce通过简单的方式执行任务,但是本身结构严格:处理或者转化(map);同步(shuffle);以及在集群中将所有结点的结果整合到一起(reduce)。你必须将问题变成一系列MapReduce任务,然后按照顺序执行这些任务,延迟很高。在前一个任务执行完成之前,任何一个任务都无法开始,运行复杂、多阶段的应用程序很让人头疼。

一种替代方案是让开发者构建有关任务的复杂、多步有向非循环图(DAG),一次执行所有这些图,而不需要一个一个按照顺序来。这个方案避免了MapReduce中麻烦的同步问题,也使得应用程序的构建更加简单。对于DAG引擎的研究,微软在早些时候已经开始了,比如:Dryad,Dryad一直在微软内部使用,针对Bing搜索和其他托管服务。

在Spark中既包含了上述一些思想,也有一些重要的创新,比如:Spark支持跨DAG的内存数据分享,使不同任务可以以非常高的速度处理相同数据。Spark甚至支持循环数据流,这使得它能很好地处理迭代图算法(社交网络分析中常用)、机器学习和流处理,这是通过MapReduce或者其他DAG引擎是很难做到的。

Spark包含了流处理、快速故障还原、语言集成API、优化调度和传输数据等许多高级的功能。内存使用是Spark最引人注目的地方,MapReduce需要经常处理存储在磁盘上的数据,相比之下,Spark可以利用分散在集群中所有节点的大量RAM,它能够智能利用磁盘,解决溢出数据和持久性问题,这使Spark在应对负载时有了巨大的性能优势。

为什么不改进MapReduce,而要取代它?

在过去两年,Hadoop社区对MapReduce做了很多改进,但这些改进大多只是停留在了代码层,软件开发者把这称为原有代码基础上的“技术债务”,这些负债导致在原有基础上的改进只能解决一时的问题,从这个意义上讲,MapReduce实在是已经负债累累。

创建全新的代码库(无技术负债),针对当前和未来可预见的负载进行设计,这个过程相对还比较简单、风险较小。需要考虑的问题是:我们是不是真的有必要创建一个全新的项目?

作为MapReduce的替代品,Spark已经比较发展得比较成熟,拥有来自25个国家超过一百个贡献者,社区非常活跃,实际上已经没有必要去创建一个全新项目。

从长远来看,我们期望减少在MapReduce上的投入,相应增加在新框架上的投入,比如:Impala和Spark,理所当然,运行在该平台上的负载将逐渐转移到新的框架上。Google已经开始将负载从MapReduce转移到Pregel和Dremel上,而FaceBook则将负载转移到Presto上。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

 
 
大数据行业交流
大数据行业交流
大数据求职招聘
大数据求职招聘
站长电话:
15010106923
微信联系:
hb-0310
站长邮箱:
ab12-120@163.com
大数据中国微信

QQ   

版权所有: Discuz! © 2001-2013 大数据.

GMT+8, 2024-4-25 07:39 , Processed in 0.073948 second(s), 24 queries .

快速回复 返回顶部 返回列表