`
weitao1026
  • 浏览: 1048653 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hadoop和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指出。

分享到:
评论

相关推荐

    2分钟读懂Hadoop和Spark的异同.docx

    Hadoop和Spark的异同 Hadoop和Apache Spark是两个大数据处理框架,但是它们的目的和使用场景不同。本文将详细解释Hadoop和Spark的异同,帮助读者更好地理解和选择大数据处理工具。 首先,Hadoop是一个分布式数据...

    2分钟读懂Hadoop和Spark的异同.pdf

    "Hadoop 和 Spark 的异同" 大数据时代,Hadoop 和 Apache Spark 两大巨头的名字早已家喻户晓。但是,我们对它们的理解往往停留在字面上,未能进行深入的思考。下面,我们将深入探讨它们之间的异同。 Hadoop ...

    大数据hadoop,spark,hive等等面试汇总

    在大数据领域,Hadoop、Spark和Hive等技术是核心组件,它们在处理大规模数据时发挥着关键作用。本文将围绕这些技术的面试知识点进行详细阐述。 首先,Hadoop是Apache基金会开发的一个开源框架,主要用于分布式存储...

    MapReduce与Spark异同点和优势比较

    MapReduce和Spark是两种在大数据处理领域广泛...在实际应用中,有时也会结合两者,例如使用Spark进行数据预处理,然后用Hadoop MapReduce进行深度分析。理解这两种框架的异同,有助于更好地设计和优化大数据处理方案。

    《Hadoop开发者》

    - Spark与Hadoop:对比Spark与Hadoop MapReduce的异同,讨论Spark如何提供更快的数据处理速度。 - Hadoop与其他大数据技术集成:如HBase、Kafka、Storm等,以及如何在Hadoop中整合这些技术。 8. 学习路径与职业...

    Ubuntu16.04搭建Hadoop2.6.7.pptx

    2. 分析MapReduce和Spark执行效率异同:根据作业执行时间,分析MapReduce和Spark执行效率异同。 六、实验结论 通过本实验,我们搭建了Hadoop集群环境,并使用MapReduce和Spark实现了词频统计功能。同时,我们也...

    App架构接口的设计.pdf

    本资源主要介绍了App架构接口的设计,涵盖了大数据框架Hadoop和Apache Spark的异同,数据分析和处理的方式,以及RESTful架构在App接口设计中的应用。 知识点1:Hadoop和Apache Spark的异同 * Hadoop是一个分布式...

    云计算分布式大数据Hadoop实战之路--从零开始(第1-10讲)

    10. **Hadoop与大数据处理框架Spark对比**:最后,我们将对比Hadoop MapReduce与新兴的大数据处理框架Spark,理解两者之间的异同,以及在特定场景下如何选择合适的框架。 通过这10讲的学习,你将具备使用Hadoop进行...

    2018阿里BAT面试题

    【标题】"2018阿里BAT面试题"所涉及的知识点主要集中在大数据处理和分布式计算领域,其中标签"spark sql hadoop"揭示了重点内容是Spark SQL与Hadoop两个核心技术。 Spark SQL是Apache Spark项目的一个重要组件,它...

    Ubuntu16.04搭建Hadoop2.6.7-图文详细版.docx

    ### Ubuntu16.04搭建...接下来的部分将继续介绍Hadoop的具体配置步骤、运行测试示例(如WordCount词频统计)以及如何比较MapReduce与Spark在执行效率上的异同点。这些内容将进一步加深我们对Hadoop及其生态的理解。

    藏经阁-TensorFrames_ Google Tensorflow with Apache Spark.pdf

    在演讲中,讲师讨论了 GPU 和 CPU 的异同点,并介绍了如何使用 GPU 来加速 numerical computing 和机器学习算法的计算速度。 本文档讨论了 TensorFrames 项目、numerical computing、GPU 加速、性能优化和未来发展...

    Hadoop面试题(四)——YARN

    1、简述hadoop1与hadoop2 的架构异同   1)加入了yarn解决了资源调度的问题。   2)加入了对zookeeper的支持实现比较可靠的高可用。 2、为什么会产生 yarn,它解决了什么问题,有什么优势?   1)Yarn最主要的功能...

    getting-started-with-sparkr:SparkR入门进行大数据分析

    此外,对于有经验的R用户,书里还会对比SparkR与其他R包(如dplyr和data.table)的异同,帮助他们更快地适应SparkR的工作方式。 总的来说,《SparkR入门进行大数据分析》是一本全面且实用的教程,适合希望利用R语言...

    Linux在操作系统理论教学中的应用研究.pdf

    在教学中,采用Linux平台还可以引入最新的研究成果和技术趋势,如容器技术(Docker)、虚拟化技术(KVM)以及分布式系统(如Hadoop和Spark)。这些现代技术的引入,可以使课程内容保持与时俱进,满足计算机专业人才...

    史上最全的大数据面试题-大数据开发者必看.docx

    - **共同工作**:Spark可以运行在YARN之上,利用Hadoop提供的资源管理和存储服务。 #### 三、大数据处理技术 **1. 数据采集的方法有哪些?请简要说明每种方法的原理和适用场景。** - **日志采集**:通过Flume等...

    【面试宝典】2021年超全超详细的最新大数据开发面试题,附答案解析(一版).pdf

    Hadoop与Spark的异同** - 相同点:都基于分布式计算框架。 - 不同点:Hadoop侧重批处理,Spark支持多种计算模式。 **5. RDD持久化原理** - RDD可以被缓存在内存或磁盘上。 - 通过`persist()`或`cache()`方法指定...

    [SQL完全手册]

    8. SQL在大数据和云计算中的应用:介绍SQL如何适应Hadoop、Spark等大数据平台,以及云数据库服务如Amazon RDS、Google Cloud SQL等。 9. 不同SQL方言的差异:SQL有多种实现,如MySQL、Oracle、SQL Server、...

    CDHHDPMAPR-DKH-星环组件比较.pdf

    综上所述,这份文档通过组件对比,展示了各大数据平台的异同,对于理解各平台的特性和选择适合的解决方案具有重要的指导意义。无论是传统的Cloudera、Hortonworks,还是新兴的星环、大快,它们都在为大数据处理提供...

    Java课件学习

    Java是一种广泛使用的面向对象的编程语言,以其跨平台性、高效性和灵活性...同时,理解Java的这些基础知识将有助于进一步探索Java的高级特性和框架,如Java EE企业级开发、Spring框架、大数据处理(Hadoop, Spark)等。

Global site tag (gtag.js) - Google Analytics