Spark:概述、体系架构、三种模式部署

Spark是一个快速通用的集群计算系统,以其内存计算和高效DAG执行引擎著称。它支持批处理、交互式查询、流处理和机器学习等多种计算模型,提供统一的软件栈,包括Spark Core、Spark Streaming、Spark SQL、MLlib和GraphX。Spark的体系架构包括驱动器节点、执行器节点和集群管理器,可在多种集群管理器上运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1、概述

1.1、spark是什么

1.2、spark特点

1.3、spark软件栈

1.3.1、Spark Core

1.3.2、Spark Streaming

1.3.3、Spark SQL

1.3.4、Spark MLlib

1.3.4、GraphX

2、体系架构

2.1、驱动器节点

2.2、执行器节点

2.3、集群管理器

2.4、Spark编程模型

3、安装部署


1、概述

1.1、spark是什么

Spark是一个用来实现快速而通用的集群计算的平台。Spark 是基于内存计算的大数据并行计算框架。除了扩展了广泛使用的 MapReduce 计算模型,而且高效地支持更多计算模式,包括交互式查询和流处理。Spark 适用于各种各样原先需要多种不同的分布式平台的场景,包括批处理、迭代算法、交互式查询、流处理。通过在一个统一的框架下支持这些不同的计算,Spark 使我们可以简单而低耗地把各种处理流程整合在一起。

 Spark 的用例分为两类:数据科学应用和数据处理应用

1.2、spark特点

1)快

与 Hadoop 的 MapReduce 相比,Spark 基于内存的运算要快 100 倍以上,基于硬盘的运算也要快 10 倍以上。Spark 实现了高效的 DAG 执行引擎,可以通过基于内存来高效处理数据流。计算的中间结果是存在于内存中的。

2)易用

Spark 支持 Java、Python、R 和 Scala 的 API,还支持超过 80 种高级算法

3)通用

Spark 提供了统一的解决方案。Spark 可以用于批处理、交互式查询(Spark SQL)、实时流处理(Spark Streaming)、机器学习(Spark MLlib)和图计算(GraphX)。这些不同类型的处理都可以在同一个应用中使用。

4)兼容性

Spark 可以使用 Hadoop 的 YARN 和 Apache Mesos 作为它的资源管理和调度器器,并且可以处理所有 Hadoop 支持的数据,包括 HDFS、HBase 和 Cassandra 等;Spark 也可以不依赖于第三方的资源管理和调度器,它实现了 Standalone 作为其内置的资源管理和调度框架

1.3、spark软件栈

大一统的软件栈,各个组件关系密切并且可以相互调用,这种设计有几个好处:
1、软件栈中所有的程序库和高级组件都可以从下层的改进中获益。
2、运行整个软件栈的代价变小了。不需要运行 5 到 10 套独立的软件系统了,一个机构只需要运行一套软件系统即可。系统的部署、维护、测试、支持等大大缩减。
3、能够构建出无缝整合不同处理模型的应用。

1.3.1、Spark Core

实现了 Spark 的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core 中还包含了对弹性分布式数据集(resilient distributed dataset,简称RDD)的 API 定义。RDD表示分布在多个计算节点上可以并行操作的元素集合,是spark主要的编程抽象

主要功能

1)SparkContext
spark应用的执行与输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值