Spark的概述、核心、组成、运行模式

一、Spark概述

        Apache Spark 是一个快速的, 多用途的集群计算系统, 相对于 Hadoop MapReduce 将中间结果保存在磁盘中, Spark 使用了内存保存中间结果, 能在数据尚未写入硬盘时在内存中进行运算。Spark 是一个计算框架,可以用来代替Hadoop中的MapReduce计算框架。

二、Spark的作用与核心

      由来:Spark 是为了解决 MapReduce 等过去的计算系统无法在内存中保存中间结果的问题,

      核心:Spark 的核心是 RDDs, RDDs 不仅是一种计算框架, 也是一个可以容错且并行的数据结构, 它可以让用户显式的将中间结果数据集保存在内中, 并且通过控制数据集的分区来达到数据存放处理最优化。

三、Spark组成

1、spark-core

       Spark 最核心的功能是 RDDs(弹性分布式数据集), RDDs 存在于 spark-core 这个包内, 这个包也是 Spark 最核心的包.

2、Spark SQL

(1)Spark SQL 在 spark-core 基础之上带出了一个名为 DataSet 和 DataFrame 的数据抽象化的概念

(2)Spark SQL 提供了在 Dataset 和 DataFrame 之上执行 SQL 的能力

(3)Spark SQL 提供了 DSL, 可以通过 Scala, Java, Python 等语言操作 DataSet 和 DataFrame

(4)它还支持使用 JDBC/ODBC 服务器操作 SQL 语言

3、Spark Streaming

(1)Spark Streaming 充分利用 spark-core 的快速调度能力来运行流分析

(2)它截取小批量的数据并可以对之运行 RDD Transformation

(3)它提供了在同一个程序中同时使用流分析和批量分析的能力

4、MLlib 

       MLlib 是 Spark 上分布式机器学习的框架,可以使用许多常见的机器学习和统计算法, 简化大规模机器学习

5、GraphX

      GraphX 是分布式图计算框架, 提供了一组可以表达图计算的 API, GraphX 还对这种抽象化提供了优化运行。

四、Spark的四种运行模式

1、Local

       用于本地开发和测试。在这种模式下,Spark 程序将 master 设置为 local 或者 local[n],使得所有的代码都在同一个 JVM 中运行。

2、Standalone

        这是 Spark 自带的集群管理模式,不依赖外部资源管理器。在这种模式下,一个 Spark 集群由 Master 和 Worker 进程组成,其中 Master 负责资源分配管理,Worker 负责运行 Executor。

3、YARN

        在这种模式下,Spark 应用程序运行在 YARN集群上,YARN 负责管理整个集群资源。YARN 模式下又分为两种部署模式:yarn-client 和 yarn-clusteryarn-client 中 Driver 运行在本地客户端,而 yarn-cluster 中 Driver 运行在 YARN 集群中。

4、Mesos

       在这种模式下,Spark 的资源管理从 Standalone 的 Master 转移到 Mesos Manager 中。Mesos 是一种资源调度管理框架,负责为运行在其上的 Spark 提供服务。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值