Spark框架介绍

一、Spark是什么

一、定义

Apache Spark是用于大规模数据处理的统一分析引擎

二、Spark更快的原因

  • 数据结构(编程模型):Spark框架核心

    • RDD:弹性分布式数据集,认为是列表List

    • Spark 框架将要处理的数据封装到集合RDD中,调用RDD中函数处理数据

    • RDD 数据可以放到内存中,内存不足可以放到磁盘中

  • Task任务运行方式:以线程Thread方式运行

    • MapReduce中Task是以进程Process方式运行,当时Spark Task以线程Thread方式运行。

    • 线程Thread运行在进程Process中,启动和销毁是很快的(相对于进程来说)。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tF6JyHBy-1644111477332)(C:\Users\EuropeanSheik\AppData\Roaming\Typora\typora-user-images\image-20220125142329172.png)]

二、Spark和Hadoop的对比

一、二者各方面比较

Hadoop Spark
类型 基础平台,包含计算、存储、调度</
Apache Spark是一种快速、通用、可扩展的分布式计算框架,可以高效地处理大规模数据。它是基于内存计算的,可以在内存中快速地对数据进行处理,从而大大提高了计算速度。 Spark的核心是一个分布式计算引擎,它可以在集群中进行分布式计算,将计算任务分成多个小任务并行处理,从而可以快速地处理大规模数据。Spark支持多种编程语言,包括Java、Scala、Python等,开发人员可以使用自己熟悉的编程语言来编写Spark应用程序。 Spark提供了一系列的API,包括Spark SQL、Spark Streaming、MLlib、GraphX等,可以满足不同的数据处理需求。其中,Spark SQL提供了类似于SQL的查询语言,可以对结构化数据进行查询和分析;Spark Streaming可以进行实时数据处理;MLlib提供了机器学习算法库,可以进行机器学习和数据挖掘;GraphX则是一个图计算库,可以进行图数据处理等。 Spark的优点主要有以下几点: 1. 高速处理能力:Spark是基于内存计算的,可以快速地对数据进行处理,比传统的基于磁盘计算的Hadoop MapReduce要快得多。 2. 支持多种数据源:Spark可以支持多种数据源,包括HDFS、Cassandra、HBase、JDBC等,可以方便地进行数据处理和分析。 3. 易于使用:Spark提供了丰富的API和编程语言支持,开发人员可以使用自己熟悉的编程语言来进行开发,学习成本较低。 4. 可扩展性强:Spark可以方便地进行横向扩展,可以添加更多的节点来扩展处理能力,从而可以应对不同的数据处理需求。 总之,Apache Spark是一个功能强大、易于使用、可扩展的分布式计算框架,可以帮助开发人员高效地处理大规模数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值