spark介绍

1 spark介绍

  • 大数据处理的统一分析引擎
    • 统一:
      • 对任意类型的数据进行自定义计算
        • 结构化、半结构化、非结构化
      • 支持Python、Java、Scala、R、SQL等多种语言
    • ——》借鉴了MapReduce的分治思想。
      • 保留了分布式并行计算的优点
      • 同时改进了其明显的缺陷:磁盘、内存不断地写入写出数据
        • ——>Spark中,中间数据存储在内存中。
        • ——>提高了运行速度
      • 同时Spark提供了丰富的操作数据的API
        • ——>提高了开发速度

1.1 Spark框架

  • Spark Core:Spark的核心
    • 以RDD(resilent distributed  dataset,弹性分布式数据集)为数据抽象
    • 提供python,java,scala,R语言的API
    • 海量离线数据的批处理计算
  • SparkSQL
    • 基于SparkCore之上
    • 结构化数据的处理模块
    • 以SQL语言对数据进行处理
    • StructuredStreaming
      • 以SparkSQL为基础,进行数据的流式计算
  • SparkStreaming
    • 以SparkCore为基础,进行数据的流式计算
    • 有一定的缺陷:并不是完整的流式计算,而是以“微批”的模式
    • 早于StructuredStreaming【如果需要使用流式计算的话,推荐StructuredStreaming】
  • MLib
    • 以SparkCore为基础,进行机器学习计算
    • 内置了大量机器学习库和API算法
  • GraphX
    • 以SparkCore为基础,进行图计算
    • 提供了大量图计算API

2 Spark VS Hadoop 

HadoopSpark
类型基础平台(包括计算、存储、调度)纯分布式计算工具
场景海量数据的批处理(磁盘迭代计算)

海量数据的批处理(内存迭代计算、交互式计算)

海量数据的流计算

价格对机器要求低,因而较为偏移对内存有要求,因而较为昂贵
编程范式

MapReduce API只有Map和Reduce两个算子,较为底层,算法适应性差(只能按照Map+Reduce的结构编写)

API较为顶层,方便使用
数据存储结构MapReduce中间计算结果再HDFS磁盘上, 延迟大

中间计算结果在内存中,延迟小

运行方式任务以进程方式维护,任务启动慢

任务以线程方式维护,任务启动块

任务可批量创建,并行能力高

2.1 两者概念的对照

Spark基础入门-第一章-1.1-Spark简单介绍_哔哩哔哩_bilibili

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UQI-LIUWJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值