• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > 【Spark1.3官方翻译】 Spark Submit提交应用程序,spark1.3spark

【Spark1.3官方翻译】 Spark Submit提交应用程序,spark1.3spark

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含spark1.3,spark submit,spark submit 参数,spark submit jar,log4j spark submit等服务器相关知识,网友希望可以进行参考

【Spark1.3官方翻译】 Spark Submit提交应用程序,spark1.3spark


英文标题:Submitting Applications

英文原址:http://spark.apache.org/docs/latest/submitting-applications.html

Spark Version:1.3.0

      

Spark根目录的bin目录下spark-submit脚本用于在集群上启动应用程序,它通过统一接口使用Spark所支持的所有集群管理器,因此无需特殊配置每一个应用程序。

 

1,绑定应用程序依赖

如果代码依赖于其它项目,为了将代码分发到Spark集群,就需要将这些依赖一起打包到应用程序中去。sbt和Maven都有装配插件,在创建装配的jar时,要列出Spark和Hadoop作为规定的依赖,如果Spark和Hadoop在集群管理器的运行时中提供了,就无需将其绑定到应用程序中去。一旦装配好jar包,就可以调用bin/spark-submit脚本执行了。

针对Python,可以使用spark-submit的—py-files参数添加.py,.zip,.egg文件和应用程序一起进行分发,如果应用程序依赖于多个Python文件,建议将它们打包成.zip或.egg文件。

 

2,用spark-submit启动应用程序

如果绑定了应用程序,就可以使用bin/spark-submit脚本启动应用程序了,这个脚本主要是进行Spark和应用程序依赖包的类路径(classpath)设置,并且可以支持不同的集群管理器和Spark支持的部署模式。提交任务后,无论时Standalone模式还是Spark on Yarn模式,都可以通过Web地址http://<driver-node>:4040来查看当前运行状态。

    ./bin/spark-submit \

  --class<main-class>

 --master <master-url> \

 --deploy-mode <deploy-mode> \

  --conf<key>=<value> \

  ... #other options

 <application-jar> \

 [application-arguments]

 

用得较多的参数是:

 --class:应用程序的入口点(例如,org.apache.spark.examples.SparkPi)

 --master:集群的master URL(例如,spark://localhost:7077)

 --deploy-mode:将driver部署到worker节点(cluster模式)或者作为外部客户端部署到本地(client模式),默认情况下是client模式

--conf:用key=value格式强制指定Spark配置属性,用引号括起来

--application-jar:包含应用程序和所有依赖的jar包的路径,路径必须是在集群中是全局可见的,例如,hdfs://路径或者file://路径

--application-arguments:传递给主类中main函数的参数

一般的部署策略是在一个网关机器上提交应用程序,这个机器和Worker机器部署在一个网络中(例如,Standalone模式的EC2集群中的Master节点)。在此部署策略中,client模式更为合适,client模式中的driver直接跟spark-submit进程一起启动,spark-submit进程在此扮演集群中一个client的角色。应用程序的输入输出依赖于控制台,如此一来,这种模式就特别适合关于REPL(例如,Spark shell)的应用程序。

另一种部署策略是,应用程序通过一台远离Worker节点的机器提交(例如,本地或者便携设备),这种情况下,一般使用cluster模式最小化drivers和executors之间的网络延时。注意,cluster模式暂时不支持于Mesos集群或Python应用程序。Python应用程序中,简单地在application-jar处传递一个.py文件而不是JAR文件,然后用--py-files添加Python.zip,.egg或者.py文件到搜索路径。

还有一些集群管理器正在使用的可选项。例如,对于Spark Standalone的cluster部署模式,也可以使用--supervise以确定driver在遇到非0(non-zero)退出码的错误时进行自动重启。可运行spark-submit带上--help列出所有的可选项。以下是一些常用选项的例子:

# Run application locally on 8 cores

./bin/spark-submit \

  --classorg.apache.spark.examples.SparkPi \

 --master local[8] \

 /path/to/examples.jar \

  100

 

# Run on a Spark Standalone cluster in clientdeploy mode

./bin/spark-submit \

  --classorg.apache.spark.examples.SparkPi \

 --master spark://207.184.161.138:7077 \

 --executor-memory 20G \

 --total-executor-cores 100 \

 /path/to/examples.jar \

  1000

 

# Run on a Spark Standalone cluster in clusterdeploy mode with supervise

./bin/spark-submit \

  --classorg.apache.spark.examples.SparkPi \

 --master spark://207.184.161.138:7077 \

 --deploy-mode cluster

 --supervise

 --executor-memory 20G \

 --total-executor-cores 100 \

 /path/to/examples.jar \

  1000

 

# Run on a YARN cluster

export HADOOP_CONF_DIR=XXX

./bin/spark-submit \

  --classorg.apache.spark.examples.SparkPi \

  --masteryarn-cluster \  # can also be`yarn-client` for client mode

 --executor-memory 20G \

 --num-executors 50 \

 /path/to/examples.jar \

  1000

 

# Run a Python application on a SparkStandalone cluster

./bin/spark-submit \

 --master spark://207.184.161.138:7077 \

 examples/src/main/python/pi.py \

  1000

 

3,Master URLs

传递给Spark的master url可以是以下任意格式之一:

master URL

意义

local

使用1个worker线程本地运行Spark(即完全没有并行化)

local[K]

使用K个worker线程本地运行Spark(最好将K设置为机器的CPU核数)

local[*]

根据机器的CPU逻辑核数,尽可能多地使用Worker线程

spark://HOST:PORT

连接到给定的Spark Standalone集群的Master,此端口必须是Master配置的端口,默认为7077

mesos://HOST:PORT

连接到给定的Mesos集群的Master,此端口必须是Master配置的端口,默认为5050。若Mesos集群使用ZooKeeper,则master URL使用mesos://zk://……

yarn-client

以client模式连接到YARN集群,集群位置将通过HADOOP_CONF_DIR环境变量获得

yarn-cluster

以cluster模式连接到YARN集群,集群位置将通过HADOOP_CONF_DIR环境变量获得

 

4,从文件中加载配置

spark-submit脚本可以通过属性文件加载默认的Spark配置值并将其传递给应用程序。默认情况下会读取Spark目录中conf/spark-default.conf文件中的各配置项,详细信息参考“加载默认配置”。

加载默认配置可以取消spark-submit命令的某些参数选项。例如,如果设置了spark.master属性,那么可以直接省略 --master选项。一般情况下,直接使用SparkConf设置的属性值具有最高的优先级,然后是spark-submit命令中传递的选项,最后才是默认配置文件中的

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 【Spark1.3官方翻译】Spark集群模式概览,spark1.3spark
  • 【Spark1.3官方翻译】Spark快速入门,spark1.3spark
  • 【甘道夫】Spark1.3.0 Submitting Applications 官方文档精华摘要,spark1.3
  • 【Spark1.3官方翻译】 Spark Submit提交应用程序,spark1.3spark

相关文章

  • 《2》CentOS7.0+OpenStack+kvm云平台部署—配置Keystone,centos7.0kvm
  • 《4》CentOS7.0+OpenStack+kvm云平台部署—配置Nova,《4》kvm
  • openstack中Nova组件images的所有python API 汇总,openstacknova
  • openstack安装经验总结,openstack经验总结
  • spark streaming 调试技巧,sparkstreaming
  • Hadoop之——Linux基本命令回顾,hadooplinux回顾
  • python RESTful API框架:Eve 快速入门,pythonrestful
  • AWS和OpenStack服务对照表,OpenStack服务英文单词的中文翻译,awsopenstack
  • &lt;转&gt;Openstack ceilometer 宿主机监控模块扩展,openstackceilometer
  • HDP 2.2.4 Hue Oozie Editor生成workflow.xml的几点问题,oozieworkflow.xml

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Jedis分片Sentinel连接池实验,jedissentinel实验
    • Elasticsearch之Nested Aggregation,elasticsearch
    • hadoop的namenode无法启动的解决办法,hadoopnamenode
    • 什么是OpenStack,OpenStack
    • Java 调用Hive 自定义UDF,java调用hiveudf
    • Greenplum+Hadoop学习笔记-14-定义数据库对象之创建与管理数据库,hadoop-14-
    • hadoop修改启动主机名称
    • 云服务器 性能测试之web压力测试,web压力测试
    • Greenplum数据库升级实务(上),greenplum实务
    • HBase,hbase安装

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有