zoukankan      html  css  js  c++  java
  • 【Spark学习笔记】04-提交Spark任务的两种模式详解

    一、基于Standalone提交任务

    1.基于Standalone-client提交任务

    --deploy-mode:不写,默认就是client提交

    也可以配置:--deploy-mode client

    ./spark-submit --master spark://node1:7077 
    --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100
    

    Spark基于Standalone-client模式提交任务,首先Driver是在客户端启动,每当在客户端提交一个Spark Application,就会启动一个Driver。每个Application都会有自己独立的Driver,Driver与集群中的Worker有大量的通信,如果在客户端提交大量的Application,会造成客户端网卡流量激增问题。在客户端可以看到task执行日志和结果。这种模式适用于程序测试,不适用生产环境。

    2.基于Standalone-cluster提交任务

    注意:在cluster模式下,jar包需要放到集群每台节点可以访问的目录(如HDFS),如果是放在本地,需要在每个节点上都放置一份

    ./spark-submit --master spark://node1:7077 --deploy-mode cluster 
    --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100
    

    Spark基于Standalone-cluster模式提交任务,首先客户端会向Master申请启动Driver,Driver是随机在一台满足资源的Worker节点上启动,如果在客户端提交多个Spark Application,每个Application的Driver是分散在集群中启动的,解决了单节点网卡流量激增问题。这种模式适用于生产环境,在客户端看不到task执行日志和结果,需要去Spark的WebUI中查看。

    二、基于Yarn提交任务

    1.Yarn-client提交任务方式

    ./spark-submit --master yarn 
    --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100
    

    Spark基于Yarn-client模式提交任务,Driver首先在客户端启动,当客户端提交多个Spark Application时,每个Application都有独立的Driver,Driver与与集群有大量的通信,会有单节点网卡流量激增的问题。这种模式适用于程序测试,不适用与生产环境,在客户端可以看到task的执行和结果。

    2.Yarn-cluster提交任务方式

    ./spark-submit --master yarn --deploy-mode cluster 
    --class org.apache.spark.examples.SparkPi ../examples/jars/spark-examples_2.11-2.3.1.jar 100
    

    Spark基于Yarn-cluster模式提交任务,Yarn的ApplicationMaster启动之后就是相当于Driver,负责task发送,当在客户端提交多个Spark Application时,每个Application都会有独立的AM,AM是分散在集群中启动,相当于将client模式中的单节点网卡流量激增问题分散到集群中。这种模式适用于生产环境,在客户端看不到task的执行日志和结果,要去Yarn的WebUI看。

  • 相关阅读:
    Python列表及元组操作
    Python内建函数
    Python字符串相关
    检测浏览器是否安装FLASH插件
    瀑布流源码
    addEventListener 简析
    半角占一个字符,全角占两个字符
    替换class名
    正则表达式 验证是否全是空格
    图片旋转
  • 原文地址:https://www.cnblogs.com/yangyh11/p/13882245.html
Copyright © 2011-2022 走看看