`

Spark源码分析1-部署与整体架构

 
阅读更多

Spark官网http://spark.apache.org/docs/latest/

Apache Spark is a fast and general-purpose cluster computing system. It provides high-level APIs in ScalaJava, and Python that make parallel jobs easy to write, and an optimized engine that supports general computation graphs. It also supports a rich set of higher-level tools includingShark (Hive on Spark), MLlib for machine learning, GraphX for graph processing, and Spark Streaming.

 

Spark 部署

1.下载:http://spark.apache.org/downloads.html.

2. 编译:sbt/sbt assembly

3.启动master:./sbin/start-master.sh

 启动work:./bin/spark-class org.apache.spark.deploy.worker.Worker spark://IP:PORT

4.spark的部署方式

1)local 模式,将master设置成“local”,这样spark将以本地模式运行,不用启动work和master,适合于调试

2)deriver模式:

./bin/spark-class org.apache.spark.deploy.Client --supervise  --verbose launch  spark://hzs-sparc01:7077 file:///home/share/lib/OperationIntelligence-0.0.1-SNAPSHOT.jar com.seven.oi.spark.RemoteSparkApplication

master将在work上启动一个deriver用来管理excutor的运行

deriver模式的优点是master可以管理deriver,当deriver挂掉后,可以重新启动deriver。

3)app模式:将app打成jar包,调用jar命令运行这个jar包

java -cp OperationIntelligence-0.0.1-SNAPSHOT.jar com.seven.oi.spark.RemoteSparkApplication

类似于deriver模式,但master不会管理这个deriver,java命令启动的进程将作为一个deriver

4)Mesos 模式:未看

5)YARN 模式:未看

 

Spark组成

spark由deriver,worker,excutor,master组成。deriver用于register application,schedual job,collector block manager info, worker用于start excutor 和deriver,excutor 用于run task,master用于维护application和worker的状态并且restart deriver 和application。

 

下面是deriver启动到runJob的过程

 

 

  • 大小: 131.8 KB
分享到:
评论

相关推荐

    SparkCore源码阅读

    ### Spark Core 源码分析之部署方式 #### 前言 Apache Spark 是一个用于大规模数据处理的开源计算系统,其核心模块 Spark Core 提供了基础的并行计算框架和分布式部署方式的支持。本文主要关注 Spark 的部署方式,...

    spark源码阅读笔记

    ### Spark源码解析:Master与Worker机制 #### Spark概述及特点 Spark是一个高效的数据处理框架,它由加州大学伯克利分校的AMP实验室研发。该框架支持多种编程语言(包括Java、Scala、Python和R等),使开发者可以...

    Spark案例源码和数据集.rar

    6. **Spark源码分析**: 深入研究Spark源码有助于理解其内部工作原理,例如调度机制、数据存储和计算过程。通过分析源码,可以学习如何优化任务调度、提高资源利用率。 7. **案例实践**: 包含的案例源码涵盖了...

    基于Spark2.X的新闻话题的实时统计分析系统源码+详细部署说明.zip

    基于Spark2.X的新闻话题的实时统计分析系统源码+详细部署说明.zip 一、业务需求分析 1.捕获用户浏览日志信息 2.实时分析前20名流量最高的新闻话题 3.实时统计当前线上已曝光的新闻话题 4.统计哪个时段用户浏览...

    Spark编程模型和解析.pdf

    集群部署意味着Spark作为一个整体运行在一个计算集群上,而应用程序部署则指的是将用户的应用程序提交给Spark集群去执行。 Spark生态系统还包含其他几个重要组件,比如用于实时计算的Spark Streaming、用于机器学习...

    计算机课程毕设:基于spark的地铁大数据客流分析系统.zip

    【标题】中的“基于Spark的地铁大数据客流分析系统”是一个以Apache Spark为核心技术的数据处理与分析项目,旨在解决城市地铁运营中的客流统计、预测及优化问题。Spark作为一个快速、通用的大数据处理框架,能高效地...

    flink源码分析.pdf

    Flink的核心架构和执行流程,可以通过其源码来深入理解,这正是这篇文档所要做的。 首先,Flink的执行环境是其核心架构的一个重要组成部分。在Flink中,算子(Operator)是处理数据的基本单位,算子的注册(声明)...

    tidb-manual-cn.pdf

    - TiSpark: 基于Apache Spark的TiDB解决方案,使得在大数据分析场景下可以使用Spark生态系统。 3. TiDB核心特性 TiDB的核心特性包括: - 水平扩展:支持无缝水平扩展,可以通过增加节点来提高系统的处理能力。 - 高...

    腾讯微博数据服务架构源码.zip

    腾讯微博数据服务架构源码分析 腾讯微博作为中国曾经的一大社交媒体平台,其背后的数据服务架构设计无疑是复杂的,涉及了大规模用户数据的存储、处理、分析和实时推送等多个方面。通过对"腾讯微博数据服务架构源码....

    基于spark推荐算法的电影推荐系统设计与实现,采用springboot后端+微信小程序前端.zip

    **测试与部署**:为了确保系统稳定运行,助教老师对源码进行了测试,这包括单元测试、集成测试和性能测试,以验证功能的正确性和系统的可扩展性。项目部署可能涉及Docker容器化技术,实现快速部署和资源隔离。 综上...

    DolphinScheduler任务调度系统 v1.3.5-源码.zip

    1. **整体架构**: DolphinScheduler采用微服务架构,主要由Web UI、Worker Server、Master Server、Meta Server和Alert Server五大部分组成。Web UI负责用户交互,展示任务视图;Worker Server执行具体的任务;...

    基于MATLAB图像处理技术的蛋鸡采食行为研究源码数据库.zip

    5. 整体架构: - 分布式系统:可能采用了分布式架构,将图像处理任务分布式部署,提高处理效率和系统可扩展性。 - 实时流处理:对于实时视频流,可能利用如Apache Kafka或Spark Streaming等技术,实现对实时数据的...

    PiFlow大数据流水线系统 v0.9-源码.zip

    总的来说,PiFlow大数据流水线系统 v0.9的源码分析是一次深入了解大数据处理技术的好机会,无论是对系统架构的理解,还是对分布式计算原理的学习,都能从中获益良多。通过深入源码,开发者不仅可以提升自己的编程...

    大规模网站架构(ppt下载)

    1. **负载均衡**:通过将流量分发到多个服务器,避免单点故障,提高系统的整体性能。常见的负载均衡器如Nginx和HAProxy。 2. **分布式计算**:将计算任务分解到多台机器上执行,以处理大数据量。Hadoop和Spark是...

    农业云计算环境下大数据处理软件的选型与部署.pdf

    在农业云计算环境中,大数据处理软件的选择与部署是关键步骤,以充分利用海量农业数据,提高生产效率和决策质量。本文着重探讨了在农业大数据背景下,如何选择适合的处理工具,并介绍了开源免费的Hadoop软件在这一...

    毕业设计-分布式软件测试管理系统的设计与实现.zip

    1. **分布式计算**:系统可能采用了如Hadoop或Spark等分布式计算框架,允许数据和任务在集群中进行高效分发和处理。 2. **任务调度算法**:为了有效地分配测试任务,系统需要一个智能的调度策略。这可能涉及到负载...

    追源索骥:透过源码看懂Flink核心框架的执行流程

    ### 追源索骥:透过源码看懂Flink核心框架的执行流程 #### 前言 Apache Flink 是一款先进的开源分布式流处理引擎,它不仅支持低延迟的流处理,同时也支持高吞吐量的数据处理场景。本文将通过剖析Flink 的核心组件...

    基于机器学习的智能运维,人工智能运维,Python源码.zip

    微服务架构则让系统更健壮,每个服务独立运行,降低了整体运维复杂性。 通过分析这个压缩包中的Python源码,我们可以学习如何将上述理论应用于实际运维场景,提升运维效率和系统稳定性。这将是一个宝贵的学习资源,...

    hadoop-2.9.2

    1. **Hadoop架构** Hadoop由两个主要组件构成:Hadoop Distributed File System (HDFS) 和 MapReduce。HDFS是一个分布式文件系统,它将大型数据集分割为小块并存储在多台服务器上,提供高容错性和高可用性。...

    PyPI 官网下载 | bw2preagg-0.2.1.tar.gz

    同时,"云原生"标签暗示了bw2preagg可能是为云环境设计的,强调微服务架构、容器化、持续集成/持续部署(CI/CD)等现代云计算原则。 在实际应用中,bw2preagg库可以与其他Python库如Pandas、Dask或Spark等结合,...

Global site tag (gtag.js) - Google Analytics