spark集群模式

2020-07-15 13:41发布

spark中yarn on cluster和yarn on client有什么区别?

spark中yarn on cluster和yarn on client有什么区别?

2条回答
yangzp
2楼 · 2020-08-26 13:50

运行环境

模式

描述

Local

本地模式

常用于本地开发测试,如在eclipse,idea中写程序测试等。本地还分为local单线程和local-cluster多线程local[*]

Standalone

集群模式

Spark自带的一个资源调度框架,支持完全分布式。存在的Master单点故障可由ZooKeeper来实现HA

Yarn

集群模式

运行在yarn资源管理器框架之上,由yarn负责资源管理,Spark负责任务调度和计算

yarn-client


以client模式连接到YARN cluster. 集群的位置基于HADOOP_CONF_DIR 变量找到

yarn-cluster


以cluster模式连接到YARN cluster. 集群的位置基于HADOOP_CONF_DIR 变量找到

Mesos

集群模式

运行在mesos资源管理器框架之上,由mesos负责资源管理,Spark负责任务调度和计算

Kubernetes

集群模式

运行在Kubernetes资源管理的集群上,目前Kubernetes调度程序是实验性的

1Local模式: Local模式就是运行在一台计算机上的模式,通常就是用于在本机上练手和测试。它可以通过以下集中方式设置master

local: 所有计算都运行在一个线程当中,没有任何并行计算,通常我们在本机执行一些测试代码,或者练手,就用这种模式;

local[K]: 指定使用几个线程来运行计算,比如local[4]就是运行4worker线程。通常我们的cpu有几个core,就指定几个线程,最大化利用cpu的计算能力;

local[*]: 这种模式直接帮你按照cpu最多cores来设置线程数了。

2Standalone模式: 构建一个由Master+Slave构成的Spark集群,Spark运行在集群中。

image.png

3Yarn模式: Spark客户端直接连接Yarn不需要额外构建Spark集群。yarn-clientyarn-cluster两种模式,主要区别在于:Driver程序的运行节点。

yarn-clientDriver程序运行在客户端,适用于交互、调试,希望立即看到app的输出

yarn-clusterDriver程序运行在由RMResourceManager)启动的APAPPMaster中,这种模式适用于生产环境

image.png

4Mesos模式:Spark客户端直接连接Mesos不需要额外构建Spark集群。国内应用比较少,更多的是运用yarn调度。


猫的想法不敢猜
3楼 · 2021-03-12 15:18

Spark的部署模式有Local、Local-Cluster、Standalone、Yarn、Mesos,其中Yarn和Mesos是类似的,都不需要额外部署Spark集群,其中Yarn也是有Yarn-Client,Yarn-Cluster两种模式。Mesos和Yarn差不多

相关问题推荐

  • spark的优点有哪些?2021-07-05 16:55
    回答 20

    首先, Spark 非常好用。由于高级 API 剥离了对集群本身的关注,你可以专注于你所要做的计算本身, 只需在自己的笔记本电脑上就可以开发 Spark 应用。其次, Spark 很快,支持交互式使用和复杂算法。最后, Spark 是一个通用引擎,可用它来完成各种各样的运算...

  • 回答 5

    现在企业中多数用的是相对稳定的Spark2.2.0版本。

  • 回答 4

        Spark,是一种One Stack to rule them all的大数据计算框架,是一种基于内存计算的框架,是一种通用的大数据快速处理引擎。    这一站式的计算框架,包含了Spark RDD(这也是Spark Core用于离线批处理)、Spark SQL(交互式查询)、Spark Streaming(实时...

  • 回答 10

    常用RDD算子(1)Action RDDforeach:遍历每个元素,无返回值,一般用在将结果存储到数据库中使用saveAsTextFile存储到hdfs,RDD每个partition存到hdfs的一个block块saveAsObjectFile:存储到hdfs,将每个partition的数据序列化后,以sequenceFile(序列化)...

  • 回答 6

    主要功能:管理当前节点内存,CPU的使用状况,接收master分配过来的资源指令,通过ExecutorRunner启动程序分配任务,worker就类似于包工头,管理分配新进程,做计算的服务,相当于process服务。需要注意的是:1)worker会不会汇报当前信息给master,worker心...

  • RDD五大属性2020-07-15 13:45
    回答 3

    1、RDD是一个分片的数据集合;2、RDD的函数针对每个分片进行计算;3、RDD之间是个依赖的集合;4、可选:key-value型RDD是根据哈希来分区的;5、可选:数据本地性优先计算。

  • 回答 3

    在hadoop/bin目录下有yarn命令yarn application -kill 

  • 回答 3
    已采纳

    1.Spark SQLSpark SQL是Spark用来操作结构化数据的组件。通过Spark SQL,用户可以使用SQL或者Apache Hive版本的SQL方言(HQL)来查询数据。Spark SQL支持多种数据源类型,例如Hive表、Parquet以及JSON等。Spark SQL不仅为Spark提供了一个SQL接口,还支持开发...

  • 回答 4

    Spark SQL 在 Spark1.x 中和传统 SQL 不完全一致。但是在 Spark2.x 版本中遵循的美国的ANSI的SQL2003完全标准sql 。oracle和mysql都有自己的语法规则,平时所使用的 SQL 语句都不是标准 SQL 。平时用的 mysql 和 oracle 以及 hive,都是部分遵循标准SQL 。...

  • 回答 3

    #!/bin/bash #队列名 根据yarn的队列提交 realtime_queue=root #提交的任务名 my_job_name=OrderQZspark-shell --master yarn --deploy-mode client \--queue $realtime_queue \ #总的executors数 根据数据量与自己的集群资源来分配--num-executors...

  • 回答 2

    Spark是一种快速、通用、可扩展的大数据分析引擎,于2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。项目是用Scala进行编写。Spark的结构:Spark生态系统已经发展成为一个包含多个子项目的集...

  • 回答 1

    自己随意编写一份测试数据,所用的测试数据如下,需求是按照第一列的字母分组,然后按照第二列数据取出每一组内前N个数据,后面我分别列出了我使用的三种方案来实现该需求,不同方案在不同的场景下会有各自的优势 a 25b 36c 24d 45e 60a 33b 26c 47d 43e 62a...

  • 回答 1

    把数据从redis读出来放到kafka里呗,然后用spark-streaming去读kafka的数据,或者写个程序从redis把数据读出来用socket或文件的形式传给spark-streaming,spark-streaming支持很多种源的方式

没有解决我的问题,去提问