简要了解Hadoop集群技术与Spark集群技术的对比

所属分类: 网站运营 / 建站经验 阅读数: 72
收藏 0 赞 0 分享


Hadoop:分布式批处理计算,强调批处理,常用于数据挖掘、分析。
Spark:是一个基于内存计算的开源的集群计算系统,目的是让数据分析更加快速, Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。
尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。通过名为Mesos的第三方集群框架可以支持此行为。Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms,Machines,and People Lab) 开发,可用来构建大型的、低延迟的数据分析应用程序。
虽然 Spark 与 Hadoop 有相似之处,但它提供了具有有用差异的一个新的集群计算框架。首先,Spark 是为集群计算中的特定类型的工作负载而设计,即那些在并行操作之间重用工作数据集(比如机器学习算法)的工作负载。为了优化这些类型的工作负载,Spark 引进了内存集群计算的概念,可在内存集群计算中将数据集缓存在内存中,以缩短访问延迟.
在大数据处理方面相信大家对hadoop已经耳熟能详,基于GoogleMap/Reduce来实现的Hadoop为开发者提供了map、reduce原语,使并行批处理程序变得非常地简单和优美。Spark提供的数据集操作类型有很多种,不像Hadoop只提供了Map和Reduce两种操作。比如map,filter, flatMap,sample, groupByKey, reduceByKey, union,join, cogroup,mapValues, sort,partionBy等多种操作类型,他们把这些操作称为Transformations。同时还提供Count,collect, reduce, lookup, save等多种actions。这些多种多样的数据集操作类型,给上层应用者提供了方便。各个处理节点之间的通信模型不再像Hadoop那样就是唯一的Data Shuffle一种模式。用户可以命名,物化,控制中间结果的分区等。可以说编程模型比Hadoop更灵活.

Hadoop和Spark均是大数据框架,都提供了一些执行常见大数据任务的工具。但确切地说,它们所执行的任务并不相同,彼此也并不排斥。虽然在特定的情况下,Spark据称要比Hadoop快100倍,但它本身没有一个分布式存储系统。而分布式存储是如今许多大数据项目的基础。它可以将PB级的数据集存储在几乎无限数量的普通计算机的硬盘上,并提供了良好的可扩展性,只需要随着数据集的增大增加硬盘。因此,Spark需要一个第三方的分布式存储。也正是因为这个原因,许多大数据项目都将Spark安装在Hadoop之上。这样,Spark的高级分析应用程序就可以使用存储在HDFS中的数据了。

与Hadoop相比,Spark真正的优势在于速度。Spark的大部分操作都是在内存中,而Hadoop的MapReduce系统会在每次操作之后将所有数据写回到物理存储介质上。这是为了确保在出现问题时能够完全恢复,但Spark的弹性分布式数据存储也能实现这一点。

另外,在高级数据处理(如实时流处理和机器学习)方面,Spark的功能要胜过Hadoop。在Bernard看来,这一点连同其速度优势是Spark越来越受欢迎的真正原因。实时处理意味着可以在数据捕获的瞬间将其提交给分析型应用程序,并立即获得反馈。在各种各样的大数据应用程序中,这种处理的用途越来越多,比如,零售商使用的推荐引擎、制造业中的工业机械性能监控。Spark平台的速度和流数据处理能力也非常适合机器学习算法。这类算法可以自我学习和改进,直到找到问题的理想解决方案。这种技术是最先进制造系统(如预测零件何时损坏)和无人驾驶汽车的核心。Spark有自己的机器学习库MLib,而Hadoop系统则需要借助第三方机器学习库,如Apache Mahout。

实际上,虽然Spark和Hadoop存在一些功能上的重叠,但它们都不是商业产品,并不存在真正的竞争关系,而通过为这类免费系统提供技术支持赢利的公司往往同时提供两种服务。例如,Cloudera就既提供Spark服务也提供Hadoop服务,并会根据客户的需要提供最合适的建议。

更多精彩内容其他人还在看

网站设计之第一印象 注意用户体验

遨游互联网的人们浏览一个个网站,是决定暂时驻留还是转身离开,往往凭借的是第一印象,这和男女相亲极为相似。如果男女双方的第一印象就不好,那么搭档去喝咖啡的可能性就很小了
收藏 0 赞 0 分享

网站建设细节标示引导用户浏览

在网站建设中,有些细节值得去研究和探讨,比如如何合理的运用标示去引导用户浏览
收藏 0 赞 0 分享

网站建设的设计与网站SEO之皮毛相附

现在网站优化SEO被太多的人所重视和讨论,但是很多SEOER往往过度的注重对搜索引擎的迎合,而忽略了网站建设的用户体验和内容设计
收藏 0 赞 0 分享

百度搜索结果后面的有多少人喜欢是什么原因

这是百度正在测试的一个新功能。1月11日消息,百度分享今日开始测试将分享数据展示在百度搜索结果页。只要是嵌入了百度分享功能的网站信息出现在搜索结果中就会显示出其被分享的次数
收藏 0 赞 0 分享

依据百度近期的几次算法,站长不要再走伪原创之路

今日在SEO论坛,有人说伪原创行将毁灭,高质量网站的春天行将到来。然而这里的伪原创后面要加两个字,那就是工具,伪原创工具行将被淘汰
收藏 0 赞 0 分享

新站如何快速提升权重的六点秘诀分享

经常有朋友问起我网站权重为什么一直很低,到底有没有好的办法快速提升呢?那好现在一起荣森网安棋子儿小编给大家分享在网站维护中快速提升网站权重
收藏 0 赞 0 分享

十大网站被降权现象汇总及原因分析

网站被降权也是网络推广过程中较为常见的现象,降权的形式也各不相同,当然原因也是多种多样
收藏 0 赞 0 分享

Google AdSense 广告已停止在您的网站上投放

早上登陆网站,发现google广告竟然无法显示了,查看邮箱发现google邮箱中在最近一次对您的帐户进行的审核中,我们发现您目前展示 Google 广告的方式不符合我们的合作规范
收藏 0 赞 0 分享

优化DNS解析和拆分域名 让网站打开速度更快技巧

如何让网站打开速度更快:DNS与拆分域名(一).
收藏 0 赞 0 分享

让网站打开更快第三弹--开启压缩篇

对于网站,也有这样的压缩技术,可以让你的网页中的文本类文件瘦身,在用户完全不知情的情况下,通过gzip和deflate压缩程序有效减少了网页,让用户更快的打开网站。
收藏 0 赞 0 分享
查看更多