Spark官网:http://spark.apache.org/docs/latest/
Apache Spark is a fast and general-purpose cluster computing system. It provides high-level APIs in Scala, Java, 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的过程
相关推荐
### Spark Core 源码分析之部署方式 #### 前言 Apache Spark 是一个用于大规模数据处理的开源计算系统,其核心模块 Spark Core 提供了基础的并行计算框架和分布式部署方式的支持。本文主要关注 Spark 的部署方式,...
### Spark源码解析:Master与Worker机制 #### Spark概述及特点 Spark是一个高效的数据处理框架,它由加州大学伯克利分校的AMP实验室研发。该框架支持多种编程语言(包括Java、Scala、Python和R等),使开发者可以...
6. **Spark源码分析**: 深入研究Spark源码有助于理解其内部工作原理,例如调度机制、数据存储和计算过程。通过分析源码,可以学习如何优化任务调度、提高资源利用率。 7. **案例实践**: 包含的案例源码涵盖了...
基于Spark2.X的新闻话题的实时统计分析系统源码+详细部署说明.zip 一、业务需求分析 1.捕获用户浏览日志信息 2.实时分析前20名流量最高的新闻话题 3.实时统计当前线上已曝光的新闻话题 4.统计哪个时段用户浏览...
集群部署意味着Spark作为一个整体运行在一个计算集群上,而应用程序部署则指的是将用户的应用程序提交给Spark集群去执行。 Spark生态系统还包含其他几个重要组件,比如用于实时计算的Spark Streaming、用于机器学习...
【标题】中的“基于Spark的地铁大数据客流分析系统”是一个以Apache Spark为核心技术的数据处理与分析项目,旨在解决城市地铁运营中的客流统计、预测及优化问题。Spark作为一个快速、通用的大数据处理框架,能高效地...
Flink的核心架构和执行流程,可以通过其源码来深入理解,这正是这篇文档所要做的。 首先,Flink的执行环境是其核心架构的一个重要组成部分。在Flink中,算子(Operator)是处理数据的基本单位,算子的注册(声明)...
- TiSpark: 基于Apache Spark的TiDB解决方案,使得在大数据分析场景下可以使用Spark生态系统。 3. TiDB核心特性 TiDB的核心特性包括: - 水平扩展:支持无缝水平扩展,可以通过增加节点来提高系统的处理能力。 - 高...
腾讯微博数据服务架构源码分析 腾讯微博作为中国曾经的一大社交媒体平台,其背后的数据服务架构设计无疑是复杂的,涉及了大规模用户数据的存储、处理、分析和实时推送等多个方面。通过对"腾讯微博数据服务架构源码....
**测试与部署**:为了确保系统稳定运行,助教老师对源码进行了测试,这包括单元测试、集成测试和性能测试,以验证功能的正确性和系统的可扩展性。项目部署可能涉及Docker容器化技术,实现快速部署和资源隔离。 综上...
1. **整体架构**: DolphinScheduler采用微服务架构,主要由Web UI、Worker Server、Master Server、Meta Server和Alert Server五大部分组成。Web UI负责用户交互,展示任务视图;Worker Server执行具体的任务;...
5. 整体架构: - 分布式系统:可能采用了分布式架构,将图像处理任务分布式部署,提高处理效率和系统可扩展性。 - 实时流处理:对于实时视频流,可能利用如Apache Kafka或Spark Streaming等技术,实现对实时数据的...
总的来说,PiFlow大数据流水线系统 v0.9的源码分析是一次深入了解大数据处理技术的好机会,无论是对系统架构的理解,还是对分布式计算原理的学习,都能从中获益良多。通过深入源码,开发者不仅可以提升自己的编程...
1. **负载均衡**:通过将流量分发到多个服务器,避免单点故障,提高系统的整体性能。常见的负载均衡器如Nginx和HAProxy。 2. **分布式计算**:将计算任务分解到多台机器上执行,以处理大数据量。Hadoop和Spark是...
在农业云计算环境中,大数据处理软件的选择与部署是关键步骤,以充分利用海量农业数据,提高生产效率和决策质量。本文着重探讨了在农业大数据背景下,如何选择适合的处理工具,并介绍了开源免费的Hadoop软件在这一...
1. **分布式计算**:系统可能采用了如Hadoop或Spark等分布式计算框架,允许数据和任务在集群中进行高效分发和处理。 2. **任务调度算法**:为了有效地分配测试任务,系统需要一个智能的调度策略。这可能涉及到负载...
### 追源索骥:透过源码看懂Flink核心框架的执行流程 #### 前言 Apache Flink 是一款先进的开源分布式流处理引擎,它不仅支持低延迟的流处理,同时也支持高吞吐量的数据处理场景。本文将通过剖析Flink 的核心组件...
微服务架构则让系统更健壮,每个服务独立运行,降低了整体运维复杂性。 通过分析这个压缩包中的Python源码,我们可以学习如何将上述理论应用于实际运维场景,提升运维效率和系统稳定性。这将是一个宝贵的学习资源,...
1. **Hadoop架构** Hadoop由两个主要组件构成:Hadoop Distributed File System (HDFS) 和 MapReduce。HDFS是一个分布式文件系统,它将大型数据集分割为小块并存储在多台服务器上,提供高容错性和高可用性。...
同时,"云原生"标签暗示了bw2preagg可能是为云环境设计的,强调微服务架构、容器化、持续集成/持续部署(CI/CD)等现代云计算原则。 在实际应用中,bw2preagg库可以与其他Python库如Pandas、Dask或Spark等结合,...