写点什么

Spark 和 Hadoop,孰优孰劣?

  • 2015-11-30
  • 本文字数:1175 字

    阅读完需:约 4 分钟

Spark 已经取代 Hadoop 成为最活跃的开源大数据项目。但是,在选择大数据框架时,企业不能因此就厚此薄彼。近日,著名大数据专家 Bernard Marr 在一篇文章中分析了Spark 和Hadoop 的异同。

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

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

重要通知:接下来 InfoQ 将会选择性地将部分优秀内容首发在微信公众号中,欢迎关注 InfoQ 微信公众号第一时间阅读精品内容。

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

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

Bernard 认为,虽然 Spark 发展迅速,但它尚处于起步阶段,安全和技术支持基础设施方还不发达。在他看来,Spark 在开源社区活跃度的上升,表明企业用户正在寻找已存储数据的创新用法。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-11-30 18:007171
用户头像

发布了 1008 篇内容, 共 403.4 次阅读, 收获喜欢 345 次。

关注

评论

发布
暂无评论
发现更多内容

基于Prometheus+Grafana打造企业级Flink监控系统

王知无

大数据 flink 监控

京东架构师分享的 Redis学习笔记手抄版;

Java架构师迁哥

Go中的SSRF攻防战

Gopher指北

安全 Go 语言

看懂2020年智能浪潮,我们从百度和谷歌的AI足迹出发

脑极体

28天瞎写的第二百二十四天:食品专业的编程高手

树上

28天写作

程序员生产环境-软件篇

ITCamel

程序员 效率工具 工作效率

Windows DHCP最佳实践(三)

BigYoung

windows Windows Server 2012 R2 DHCP

大数据知识专栏 - MapReduce的Combiner实现shuffle调优

小马哥

大数据 hadoop mapreduce 七日更

数据倾斜?Spark 3.0 AQE专治各种不服

王知无

大数据 spark

基础不牢,地动山摇;自学进大厂的第18天!

Java架构师迁哥

LKA是如何实现的(28天写作 Day13/28)

mtfelix

自动驾驶 28天写作

项目管理变更之交付目标的变化

L3C老司机

竟然输给了一款软件「幻想小说 13/28」

道伟

28天写作

两层和三层网络架构差异

企业短信服务质量与用户体验如何监控?短信监测技术震撼来袭

博睿数据

短信 数据监测

直播预告丨NLP领域的2020年大事记及2021展望

京东科技开发者

机器学习 AI nlp

蔡超:这八点架构师感悟,真的很干货 | 大道至简

李忠良

28天写作

JVM的内存分代,这篇文章帮你理一理

Java鱼仔

Java 面试 JVM

重学JS | Web Workers让JS存在多线程环境

梁龙先森

编程 大前端 28天写作

管理者掌握这5个提问技巧,秒变提问高手

一笑

团队管理 管理 团队建设 提问的艺术 28天写作

Orleans 知多少 | .NET分布式框架

圣杰

dotnet actor orleans

【盘点2020】机房网络性能哪家强?年度冠军揭晓

博睿数据

机房 评测

从烟酒茶说系统化学习

张老蔫

28天写作

1000公里续航动力电池背后的迷雾与真相

脑极体

HTML(四)——建立超链接

程序员的时光

html 程序员 28天写作

Spring Boot 中使用拦截器

武哥聊编程

Java springboot SpringBoot 2 拦截器 28天写作

技术分享 | 漫谈音视频中的拥塞控制

拍乐云Pano

HDFS中的常用压缩算法及区别

王知无

大数据 hdfs

【并发编程的艺术】JAVA并发机制的底层原理

程序员架构进阶

Java 架构 并发编程 内存模型 28天写作

大数据知识专栏 -MapReduce 自定义排序技术

小马哥

大数据 hadoop mapreduce 七日更

【我给面试官画饼】软件测试理论基础、质量保证常见面试题——会被面试官赶出来吗?

程序员阿沐

面试 软件测试 测试工程师 质量保证

Spark和Hadoop,孰优孰劣?_大数据_谢丽_InfoQ精选文章