SparkContext在获得了一系列的初始化信息后开始创建并启动TaskScheduler实例:
进入createTaskScheduler方法:
我们看一下其Standalone的方式:
在上述代码中首先实例化一个TaskSchedulerImpl:
然后构建出了masterUrls:
接着创建出关键的backend:
进入SparkDeploySchedulerBackend实现:
从以上截图可以看出来,SparkDeploySchedulerBackend核心是为了启动CoarseGrainedExecutorBackend
此处使用了Akka技术进行不同机器之间的通信,CoarseGrainedExecutorBackend是具体在Worker上执行具体的任务的进程的代表,所以我们的backend实例就是用来提交任务给Executor的:
其实CoarseGrainedExecutorBackend是Executor的代理人,能够完成很多任务,例如启动一个任务:LaunchTask
回到SparkContext的Standalone的方式的代码处:
接着代码是把backend传给了TaskSchedulerImpl的initialize方法中:
在上述代码中显示处理调度模式 例如FIFO和Fair的模式。
在代码块的最后返回实例化后的backend, scheduler:
PS:妈蛋的 公司破网,spark源码没下载成功,只能在github上面看了,蛋疼
相关推荐
这个"spark-3.1.3-bin-without-hadoop.tgz"压缩包是Spark的3.1.3版本,不含Hadoop依赖的二进制发行版。这意味着在部署时,你需要自行配置Hadoop环境,或者在不依赖Hadoop的环境中运行Spark。 Spark的核心特性包括...
在Ubuntu里安装spark,spark-2.1.0-bin-without-hadoop该版本直接下载到本地后解压即可使用。 Apache Spark 是一种用于大数据工作负载的分布式开源处理系统。它使用内存中缓存和优化的查询执行方式,可针对任何规模...
《Spark编程核心组件:spark-assembly-1.5.2-hadoop2.6.0.jar详解》 在大数据处理领域,Spark以其高效、易用和灵活性脱颖而出,成为了许多开发者的首选框架。Spark-assembly-1.5.2-hadoop2.6.0.jar是Spark中的一个...
spark-hive_2.11-2.3.0 spark-hive-thriftserver_2.11-2.3.0.jar log4j-2.15.0.jar slf4j-api-1.7.7.jar slf4j-log4j12-1.7.25.jar curator-client-2.4.0.jar curator-framework-2.4.0.jar curator-recipes-2.4.0....
Spark-3.1.2.tgz和Spark-3.1.2-bin-hadoop2.7.tgz是两个不同格式的Spark发行版,分别以tar.gz和rar压缩格式提供。 1. Spark核心概念: - RDD(弹性分布式数据集):Spark的基础数据结构,是不可变、分区的数据集合...
在解压`spark-2.4.7-bin-hadoop2.6.tgz`后,您会得到一个名为`spark-2.4.7-bin-hadoop2.6`的目录,其中包括以下组件: - `bin/`:包含可执行文件,如`spark-submit`,`pyspark`,`spark-shell`等,用于启动和管理...
总结,Spark-1.6.0-bin-hadoop2.6.tgz是一个完整的Spark发行版,适用于在Linux环境下搭建Spark集群,涵盖多个核心组件,支持多种数据处理场景。通过熟练掌握Spark的安装、配置和使用,可以充分利用其强大功能处理大...
总结一下,"spark-3.2.1-bin-hadoop2.7.tgz"是一个专为Linux设计的Spark版本,与Hadoop 2.7兼容,提供了高效的大数据处理能力,涵盖了核心计算、SQL查询、流处理、机器学习和图计算等多个方面。在实际应用中,开发者...
Spark是Apache软件基金会下的一个开源大数据处理框架,其主要特点是高效、通用、易用和可扩展。...解压"spark-3.2.0-bin-hadoop3.2.tgz"后,用户可以直接在Hadoop 3.2环境下运行Spark,享受其带来的高性能计算体验。
在这个特定的压缩包"spark-3.1.3-bin-hadoop3.2.tgz"中,我们得到了Spark的3.1.3版本,它已经预编译为与Hadoop 3.2兼容。这个版本的Spark不仅提供了源码,还包含了预编译的二进制文件,使得在Linux环境下快速部署和...
本资源是spark-2.0.0-bin-hadoop2.6.tgz百度网盘资源下载,本资源是spark-2.0.0-bin-hadoop2.6.tgz百度网盘资源下载
Spark Doris Connector(apache-doris-spark-connector-2.3_2.11-1.0.1-incubating-src.tar.gz) Spark Doris Connector Version:1.0.1 Spark Version:2.x Scala Version:2.11 Apache Doris是一个现代MPP分析...
Spark-3.0.0-bin-hadoop2.7.tgz 是Spark 3.0.0版本的预编译二进制包,其中包含了针对Hadoop 2.7版本的兼容性构建。这个版本的发布对于数据科学家和大数据工程师来说至关重要,因为它提供了许多性能优化和新功能。 1...
在本安装包“spark-3.2.4-bin-hadoop3.2-scala2.13”中,包含了用于运行Spark的核心组件以及依赖的Hadoop版本和Scala编程语言支持。以下是对这些关键组成部分的详细解释: 1. **Spark**: Spark的核心在于它的弹性...
本压缩包“spark-3.2.0-bin-hadoop3-without-hive”则特别针对不包含 Hive 支持的环境进行打包,更专注于基础的 Spark 与 Hadoop 3 的集成。 首先,让我们深入了解 Spark 3.2.0 的主要改进。这一版本引入了新的 SQL...
这个"spark-3.1.2-bin-hadoop2.7.tgz"是一个压缩包,包含了Spark 3.1.2版本,针对Hadoop 2.7优化的二进制发行版。在Linux环境下,这个版本的Spark可以与Hadoop生态系统无缝集成,用于大数据分析和处理任务。 Spark...
spark-hive-thriftserver_2.11-2.1.spark-hive-thrift
为了使用"spark-2.4.7-bin-without-hadoop",你需要首先下载并解压提供的spark-2.4.7-bin-without-hadoop.tgz文件。解压后,你可以找到包含Spark所有组件的目录结构,包括Spark的可执行文件、配置文件以及相关的库...
5. **交互式Shell**:Spark提供了一个名为`spark-shell`的交互式环境,方便开发人员测试和调试代码。 **Spark与Hadoop 3.2的兼容性** Hadoop 3.2引入了许多新特性,如: 1. **多命名空间**:支持多个HDFS命名空间...
在本案例中,我们关注的是Spark的2.3.4版本,它预编译为与Hadoop 2.7兼容的版本,打包成"spark-2.3.4-bin-hadoop2.7.tgz"的压缩文件。这个压缩包包含了运行Spark所需的所有组件,包括Java库、Python库(pyspark)、...