• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > Hadoop 和 Spark 的异同

Hadoop 和 Spark 的异同

作者:takeCareOfYou的博客 字体:[增加 减小] 来源:互联网

本文主要包含hadoop spark,hadoop hive spark,spark和hadoop的区别,hadoop spark storm,hadoop hbase spark等服务器相关知识,takeCareOfYou的博客希望可以进行参考

    谈到大数据,相信大家对Hadoop和Apache Spark这两个名字并不陌生。但我们往往对它们的理解只是提留在字面上,并没有对它们进行深入的思考,下面不妨跟我一块看下它们究竟有什么异同。

一、解决问题的层面不一样

 

    首先,Hadoop和Apache Spark两者都是大数据框架,但是各自存在的目的不尽相同。Hadoop实质上更多是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,意味着您不需要购买和维护昂贵的服务器硬件。

    同时,Hadoop还会索引和跟踪这些数据,让大数据处理和分析效率达到前所未有的高度。Spark,则是那么一个专门用来对那些分布式存储的大数据进行处理的工具,它并不会进行分布式数据的存储。

二、两者可合可分

    Hadoop除了提供为大家所共识的HDFS分布式数据存储功能之外,还提供了叫做MapReduce的数据处理功能。所以这里我们完全可以抛开Spark,使用Hadoop自身的MapReduce来完成数据的处理。

    相反,Spark也不是非要依附在Hadoop身上才能生存。但如上所述,毕竟它没有提供文件管理系统,所以,它必须和其他的分布式文件系统进行集 成才能运作。这里我们可以选择Hadoop的HDFS,也可以选择其他的基于云的数据系统平台。但Spark默认来说还是被用在Hadoop上面的,毕 竟,大家都认为它们的结合是最好的。

以下是天地会珠海分舵从网上摘录的对MapReduce的最简洁明了的解析:

我们要数图书馆中的所有书。你数1号书架,我数2号书架。这就是“Map”。我们人越多,数书就更快。现在我们到一起,把所有人的统计数加在一起。这就是“Reduce”。

三、Spark数据处理速度秒杀MapReduce

 

    Spark因为其处理数据的方式不一样,会比MapReduce快上很多。MapReduce是分步对数据进行处理的: ”从集群中读取数据,进行一次处理,将结果写到集群,从集群中读取更新后的数据,进行下一次的处理,将结果写到集群,等等…“ Booz Allen Hamilton的数据科学家Kirk Borne如此解析。

    反观Spark,它会在内存中以接近“实时”的时间完成所有的数据分析:“从集群中读取数据,完成所有必须的分析处理,将结果写回集群,完成,” Born说道。Spark的批处理速度比MapReduce快近10倍,内存中的数据分析速度则快近100倍。

    如果需要处理的数据和结果需求大部分情况下是静态的,且你也有耐心等待批处理的完成的话,MapReduce的处理方式也是完全可以接受的。

    但如果你需要对流数据进行分析,比如那些来自于工厂的传感器收集回来的数据,又或者说你的应用是需要多重数据处理的,那么你也许更应该使用Spark进行处理。

    大部分机器学习算法都是需要多重数据处理的。此外,通常会用到Spark的应用场景有以下方面:实时的市场活动,在线产品推荐,网络安全分析,机器日记监控等。

四、灾难恢复

    两者的灾难恢复方式迥异,但是都很不错。因为Hadoop将每次处理后的数据都写入到磁盘上,所以其天生就能很有弹性的对系统错误进行处理。

    Spark的数据对象存储在分布于数据集群中的叫做弹性分布式数据集(RDD: Resilient Distributed Dataset)中。“这些数据对象既可以放在内存,也可以放在磁盘,所以RDD同样也可以提供完成的灾难恢复功能,”Borne指出。

 

 

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 整套spark视频教程免费下载,还有Hadoop,sparkhadoop
  • Hadoop Spark 集群简便安装总结,hadoopspark集群
  • storm与hadoop的对比,stormhadoop
  • Hadoop 和 Spark 的异同

相关文章

  • hadoop学习笔记(四)——eclipse+maven+hadoop2.5.2源码,hadoophadoop2.5.2
  • Scala非值类型,Scala值类型
  • CRM市场及Zoho模式,CRM市场Zoho模式
  • hadoop单机存储均衡和坏block处理,hadoop单机block
  • Spark学习笔记之浅释,spark学习笔记
  • openstack安装经验总结,openstack经验总结
  • hbase-1.0.1的60010页面无法打开,hbase-1.0.160010
  • spark streaming kafka1.4.1中的低阶api createDirectStream使用总结,directstream
  • 关于Oozie的input-events和done-flag,oozieinput-events
  • Libvirt中windows虚拟机的动态内存管理,libvirt虚拟机

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • 亚马逊是如何颠覆商业软件高昂价格这座”柏林墙”的,商业软件柏林墙
    • libvirt网络过滤规则:禁止客户机(bridge方式)连接外网,libvirtbridge
    • Maven构建Hadoop Web项目,maven构建hadoopweb
    • Storm On Yarn部署,stormonyarn部署
    • 如何创造自己的数据字典(词库转换工具的使用),创造自己工具的使用
    • 【Spark】Spark应用执行机制,spark执行机制
    • Hadoop之——HDFS命令,hadoophdfs
    • hive grouping sets 和 cube 用法,hivegrouping
    • Install Docker on Mac OS X,installdocker
    • hadoop文件损坏解决办法,

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有