IELAB网络实验室 Hadoop和Spark异同

学习大数据的同学,对于Hadoop和Apache Spark 肯定都有一定的了解。但是他们都有什么相同和不同的地方呢?我们下来分析一下:
1、Hadoop
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
2、Spark
Spark是一个用来实现快速而通用的集群计算的平台。速度方面,Spark扩展了广泛使用的MapReduce计算模型,而且高效地支持更多计算模式,包括交互式查询和流处理。
Spark项目包含多个紧密集成的组件。Spark的核心是一个对由很多计算任务组成的、运行在多个工作机器或者是一个计算集群上的应用进行调度、分发以及监控的计算引擎。

目的不同:
Hadoop和Spark两者都是大数据框架,但是各自存在的目的不相同。Hadoop是一个分布式数据基础设施: 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储。同时,Hadoop还会索引和跟踪这些数据。Spark,则是那么一个专门用来对那些分布式存储的大数据进行处理的工具,它并不会进行分布式数据的存储。

部署:
Hadoop的核心框架设计就是HDFS分布式数据存储功能和MapReduce的数据处理功能。所以这里我们完全可以抛开Spark,使用Hadoop自身的MapReduce来完成数据的处理。
Spark是不提供文件管理系统的,所以,它必须和其他的分布式文件系统进行集成才行。
也可以选择其他的基于云的数据系统平台。但Spark默认来说还是被用在Hadoop上面的。

数据处理
Spark数据处理速度完全秒杀MapReduce,因为数据处理方式不同。MapReduce是分步对数据进行处理,而Spark的批处理速度比MapReduce快将近10倍,内存中数据分析速度则快将近100倍。

数据恢复:
两者的灾难恢复方式迥异,Hadoop将每次处理后的数据都写入到磁盘上,所以能很有弹性的对系统错误进行处理。Spark的数据对象存储在分布于数据集群中的叫做弹性分布式数据集(RDD: Resilient Distributed Dataset)中。这些数据对象既可以放在内存,也可以放在磁盘,所以RDD同样也可以提供完成的灾难恢复功能。

                                         部分内容来源于网络

助教:马季

转载:http://www.ie-lab.cn/

ie-lab网络实验室针对思科认证,ccie,ccna,ccnp认证,华为认证等课程!
授课经验丰富,师资力量雄厚!
通过网络报名所有课程6折起!咨询微信13126705344,电话同步!

猜你喜欢

转载自blog.csdn.net/spccie/article/details/89714163