spark 笔记(一) stand alone 和yarn-cluster的部分区别

公司最近的spark集群由原来的standalone迁移到spark on yarn了,在迁移相关的程序时,发现调整还是有一些的,以下分别是两个版本提交的部分shell命令,从命令可以看出其区别,这个区别主要是spark on yarn的工作方式不太一样,造成提交的方式也不太一样。

standalone方式的脚本为:

spark-submit --class com.bg.tools.WapJoinUA --driver-memory 80g --executor-memory 60g --total-executor-cores 256 ${COMMON_PATH}/jars/${APP_JAR} ${HDFS_UATAG_INPUT} ${HDFS_INSTANCE_INPUT} ${TAGS_FILTER_FILE} ${HDFS_OUTPUT} 100

yarn-cluster方式的脚本为:

spark-submit --queue dc
--class bg.tools.Instance --master yarn-cluster --executor-memory 30g --driver-memory 10g --num-executors 200
--executor-cores 16 ${COMMON_PATH}/jars/${APP_JAR} ${HDFS_INSTANCE_INPUT} ${HDFS_OUTPUT}

碰到的问题其中一个就是文件读写的方法不一致, standalone由于driver是固定的, 读取文件类似本地读取,但是yarn-cluster的driver是yarn进行分配的,需要把文件使用--files进行上传,而且在读取文件的时候,应该只能使用文件的名称而不是包含全部路径的文件名,不然会抛出文件找不到的异常,另外比较有用的是这个选项:--conf "spark.hadoop.mapreduce.input.fileinputformat.split.minsize=1073741824"
一般hadoop默认的块是64M,这个可以调整split的大小,以免切分成太多小文件。

时间: 2024-10-21 11:08:07

spark 笔记(一) stand alone 和yarn-cluster的部分区别的相关文章

理解Spark运行模式(二)(Yarn Cluster)

上一篇说到Spark的yarn client运行模式,它与yarn cluster模式的主要区别就是前者Driver是运行在客户端,后者Driver是运行在yarn集群中.yarn client模式一般用在交互式场景中,比如spark shell, spark sql等程序,但是该模式下运行在客户端的Driver与Yarn集群有大量的网络交互,如果客户端与集群之间的网络不是很好,可能会导致性能问题.因此一般在生产环境中,大部分还是采用yarn cluster模式运行spark程序. 下面具体还是

spark 笔记 4:Apache Hadoop YARN: Yet Another Resource Negotiator

spark支持YARN做资源调度器,所以YARN的原理还是应该知道的:http://www.socc2013.org/home/program/a5-vavilapalli.pdf    但总体来说,这是一篇写得一般的论文,它的原理没有什么特别突出的,而且它列举的数据没有对比性,几乎看不出YARN有什么优势.反正我看完的感觉是,YARN的资源分配在延迟上估计很糟糕.而实际使用似乎也印证了这个预感. Abstract  two key shortcomings: 1) tight coupling

Extending sparklyr to Compute Cost for K-means on YARN Cluster with Spark ML Library

Machine and statistical learning wizards are becoming more eager to perform analysis with Spark MLlibrary if this is only possible. It’s trendy, posh, spicy and gives the feeling of doing state of the art machine learning and being up to date with th

Spark笔记——技术点汇总

目录 · 概况 · 手工搭建集群 · 引言 · 安装Scala · 配置文件 · 启动与测试 · 应用部署 · 部署架构 · 应用程序部署 · 核心原理 · RDD概念 · RDD核心组成 · RDD依赖关系 · DAG图 · RDD故障恢复机制 · Standalone模式的Spark架构 · YARN模式的Spark架构 · 应用程序资源构建 · API · WordCount示例 · RDD构建 · RDD缓存与持久化 · RDD分区数 · 共享变量 · RDD Operation · R

谈hadoop/spark里为什么都有,YARN呢?

在Hadoop集群里,有三种模式: 1.本地模式 2.伪分布模式 3.全分布模式 在Spark集群里,有四种模式: 1.local单机模式 结果xshell可见: ./bin/spark-submit --class org.apache.spark.examples.SparkPi --master local[1] ./lib/spark-examples-1.3.1-hadoop2.4.0.jar 100 这里写local,就是local[1] 2.standalone集群模式 需要的配置

Spark 1.1.1 Running On Yarn

Running Spark on YARN Support for running on YARN (Hadoop NextGen) was added to Spark in version 0.6.0, and improved in subsequent releases. Preparations Running Spark-on-YARN requires a binary distribution of Spark which is built with YARN support.

Apache Spark源码走读之19 -- standalone cluster模式下资源的申请与释放

欢迎转载,转载请注明出处,徽沪一郎. 概要 本文主要讲述在standalone cluster部署模式下,Spark Application在整个运行期间,资源(主要是cpu core和内存)的申请与释放. 构成Standalone cluster部署模式的四大组成部件如下图所示,分别为Master, worker, executor和driver,它们各自运行于独立的JVM进程. 从资源管理的角度来说 Master  掌管整个cluster的资源,主要是指cpu core和memory,但Ma

dojo 学习笔记之一 dom.byId dojo.byId registry.byId 的区别

在dojo中,除了沿用Dom结点, dojo 还自定义了一类结点用"dojoType" 进行标识. dojo 称这些结点为widget. 当检测到HTMl文档中某个标签定义了dojoType 属性之后,dojo会调用dojo包中相应的 js 及 css 文件对这个结点进行渲染. 从而这个结点元素就会相应地显示出具有dojo特色的样式及功能. 如此说来, dom.byId 跟 dojo.byId 获取到的就是普通的HTMl文档结构树中的某个结点元素,以下简称dom结点, 而 regist

nodejs学习笔记_nodejs和PHP在基础架构上的区别--共享状态的并发

绝大多数对于Node.js的讨论都把关注点放在了处理高并发能力上,做开发的时候一定要明白node内部做出的权衡,以及node应用性能好的原因. node 为javascript引入了一个复杂的概念,:共享状态的并发. node采用一个长期运行的进程 而php在apache中会产生多个进程 如下图所示: 代码验证: PHP: <?php $i = 0; $i++; echo $i nodejs: var http = require('http'); var i=0; http.createSer