很多初学Hadoop开发的同学分不清Hadoop和Spark究竟有什么联系?
搞不清Hadoop和Spark是两个独立的框架,还是必须相互依存才能完成工作?
今天就给大家分析一下Hadoop和Spark几点区别。
Hadoop和Spark各是什么?
-
Hadoop
Hadoop是一分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。
利用集群的威力进行高速运算和存储。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供存储,MapReduce为海量的数据提供计算。
-
Spark
Spark 是专为大规模数据处理而设计的快速通用的计算引擎。是类Hadoop MapReduce的通用并行框架,拥有Hadoop MapReduce所具有的优点。
Hadoop和Spark的异同大致可以分为以下几点
1.处理问题的层面不同
-
hadoop
Hadoop实质上更多是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,同时还会索引和跟踪这些数据,大幅度提升大数据处理和分析效率。
-
spark
Spark,是一个专门用来对那些分布式存储的大数据进行处理的工具,自身不会进行数据的存储。
2.即可搭配工作,也可独立运行
-
hadoop
Hadoop可以独立完成数据的存储和处理工作,因为其除了提供HDFS分布式数据存储功能,还提供MapReduce数据处理功能。
-
spark
Spark没有提供文件管理系统,它必须和其他的分布式文件系统进行集成才能运作。可以选择Hadoop的HDFS,也可以选择其他平台。
3.Spark数据处理速度远超MapReduce
-
hadoop
Hadoop是磁盘级计算,计算时需要在磁盘中读取数据;其采用的是MapReduce的逻辑,把数据进行切片计算用这种方式来处理大量的离线数据.
-
spark
Spark,它会在内存中以接近“实时”的时间完成所有的数据分析。Spark的批处理速度比MapReduce快近10倍,内存中的数据分析速度则快近100倍。
比如实时的市场活动,在线产品推荐等需要对流数据进行分析场景就要使用Spark。
4.灾难恢复
-
hadoop
Hadoop将每次处理后的数据写入磁盘中,对应对系统错误具有天生优势。
-
spark
Spark的数据对象存储在弹性分布式数据集(RDD:)中。“这些数据对象既可放在内存,也可以放在磁盘,所以RDD也提供完整的灾难恢复功能。
如何用4个月学会Hadoop开发并找到年薪25万工作?
免费分享一套17年最新Hadoop大数据教程和100道Hadoop大数据必会面试题。
因为链接经常被和谐,需要的朋友请加微信 ganshiyun666 来获取最新下载链接,注明“51CTO”
教程已帮助300+人成功转型Hadoop开发,90%起薪超过20K,工资比之前翻了一倍。
由百度Hadoop核心架构师(T7级别)亲自录制。
内容包括0基础入门、Hadoop生态系统、真实商业项目实战3大部分。其中商业案例可以让你接触真实的生产环境,训练自己的开发能力。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/192321.html