Spark ----Spark 核心概述

本文详细介绍了Spark的核心功能,包括SparkContext、存储体系、计算引擎和部署模式。Spark使用内存优先的存储策略,提供高效率的计算。SparkSQL支持SQL和Hive,SparkStreaming处理流式数据,SparkGraphX用于图计算,而MLlib则是机器学习框架。文章还讨论了Spark的基本架构,包括Cluster Manager、Master、Worker和Executor的角色。最后,概述了Spark的编程模型和任务执行流程。

1、Spark 核心功能 

Spark Core 提供 Spark 最基础的最核心的功能,主要包括: 

SparkContext 

通常而言,DriverApplication 的执行与输出都是通过 SparkContext 来完成的,在正式提交 Application 之前,首先需要初始化 SparkContext。SparkContext 隐藏了网络通信、分布式 部署、消息通信、存储能力、计算能力、缓存、测量系统、文件服务、Web 服务等内容, 应用程序开发者只需要使用 SparkContext 提供的 API 完成功能开发。 

SparkContext 内置的 DAGScheduler 负责创建 Job,将 DAG 中的 RDD 划分到不同的 Stage, 提交 Stage 等功能。 

SparkContext 内置的 TaskScheduler 负责资源的申请、任务的提交及请求集群对任务的调度 等工作。 

存储体系 

Spark 优先考虑使用各节点的内存作为存储,当内存不足时才会考虑使用磁盘,这极大地 减少了磁盘 I/O,提升了任务执行的效率,使得 Spark 适用于实时计算、流式计算等场景。 此外,Spark 还提供了以内存为中心的高容错的分布式文件系统 Tachyon 供用户进行选择。 Tachyon 能够为 Spark 提供可靠的内存级的文件共享服务。 

计算引擎 

计算引擎由 SparkContext 中的 DAGScheduler、RDD 以及具体节点上的 Executor 负责执行 的 Map 和 Reduce 任务组成。DAGScheduler 和 RDD 虽然位于 SparkContext 内部,但是在 任务正式提交

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值