QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

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:007106
用户头像

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

关注

评论

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

为什么阿里巴巴不建议在for循环中使用”+,java编程技术开发题库和答案

Java 程序员 后端

什么是接口的幂等性,如何实现接口幂等性?,java微服务架构视频下载

Java 程序员 后端

从 0 到 1,带你解剖 MVP 的神秘之处,并自己动手实现 MVP !

Java 程序员 后端

从Mybatis源码到Spring动态数据源底层原理分析系列二、Mybatis执行器源码分析

Java 程序员 后端

互联网架构“高并发”到底怎么玩,用Elasticsearch搞定日均1亿订单查询

Java 程序员 后端

京东三面被惨虐:索引+数据库,kafka入门与实践epub

Java 程序员 后端

京东面试,这个问题让我与50万擦肩而过,帮忙看看,mysql下载教程window10

Java 程序员 后端

人到中年的焦虑,Java面试第一问就是做过什么最有难度的项目

Java 程序员 后端

今年,我在字节跳动面试了九次【已意向书,mongodb入门pdf

Java 程序员 后端

互联网寒冬下!疫情又遭滑铁卢!从裁员到斩获新offer我经历了什么

Java 程序员 后端

今日头条一面:十道经典面试题解析,Redis如何实现高可扩展

Java 程序员 后端

九年程序员生涯,我的一些经验教训,offer来了java面试百度云版

Java 程序员 后端

二十不惑的年纪,竟4面拿下字节跳动offer,我简直走了,jdk和jre区别面试题

Java 程序员 后端

五分钟带你了解Seata分布式事务,java基础菜鸟教程txt

Java 程序员 后端

人工智能 - 语音识别的技术原理是什么,Java理论知识思维导图

Java 程序员 后端

五位阿里大牛联手撰写的《深入浅出Java多线程》,java开发视频直播

Java 程序员 后端

京东T7架构师手写的10万字Spring Boot详细学习笔记+源码免费下载

Java 程序员 后端

人性的弱点-读书笔记,java面试题大汇总小山博客

Java 程序员 后端

什么?这个岗位薪资秒杀一众程序员?,java技术面试常见问题

Java 程序员 后端

从Java小白到拿到30k offer,分享自己的学习路程,java基础案例教程pdf百度云

Java 程序员 后端

从Mybatis源码到Spring动态数据源底层原理分析系列一、Mybatis初始化源码浅析

Java 程序员 后端

为什么说简历很重要?怎么才能写出一份完美的简历?这篇文章你值得拥有

Java 程序员 后端

二面余额宝(交叉面),mybatis功能架构

Java 程序员 后端

Vue进阶(幺伍伍):vue-resource 拦截器 interceptors 使用

No Silver Bullet

Vue vue-resource 10月月更

五分钟看穿Java并发相关概念,并发原来如此简单,linux学习步骤

Java 后端

京东十年T8架构师手撕MySQL:手写666页核心知识,超85,java在线编译器实现原理

Java 程序员 后端

什么神仙笔记!阿里P9用39实例+1项目讲明白了Spring Cloud家族

Java 程序员 后端

二叉树的各种算法面试题及答案解析,linux基础教程第二版pdf

Java 程序员 后端

京东T9裂墙力荐的82万字spring cloud微服务和分布式系统实践文档

Java 程序员 后端

京东前端面经(123面详细),进阶学习工作最全指南

Java 程序员 后端

什么是 MySQL 全局锁、表锁、行锁,Java高级开发岗必问知识点

Java 程序员 后端

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