zoukankan      html  css  js  c++  java
  • 如何在Spark集群的work节点上启动多个Executor?

    如何在Spark集群的work节点上启动多个Executor?

    默认情况下,Spark集群下的worker,只会启动一个Executor只运行了一个 CoarseGrainedExecutorBackend 进程。Worker 通过持有 ExecutorRunner 对象来控制 CoarseGrainedExecutorBackend 的启停。
    那么如何启动多个executor呢?通过设置参数来解决:

    1、设置每个executor使用的cpu数为4

    spark.executor.cores 4

    2、限制cpu使用数量,这里会启动3个executor(12/4)

    spark.cores.max 12  

    3、设置每个executor的内存大小为8g

    spark.executor.memory 12g

    以上设置将会启动3个executor,每个executor使用4cpu,12gRAM。 
    总共占用worker资源12cpu,36gRAM。

    Spark1.6的源码部分为:

    protected final String EXECUTOR_MEMORY = "--executor-memory";
    protected final String TOTAL_EXECUTOR_CORES = "--total-executor-cores";
    protected final String EXECUTOR_CORES = "--executor-cores";

    也可以在提交任务的时候添加:

    SparkSubmit --class com.dyq.spark.MyClass --master:spark://master:7077  --total-executor-cores 12 --executor-cores 24 --executor-memory 12g
  • 相关阅读:
    SolrCloud阶段总结
    Solr总结
    机器学习算法与Python实践之(六)二分k均值聚类
    机器学习问题方法总结
    浅谈Kmeans聚类
    AVL树的算法思路整理
    Solr4.6从数据库导数据的步骤
    红黑树
    浅谈 Adaboost 算法
    POJ 1836 Alignment
  • 原文地址:https://www.cnblogs.com/ExMan/p/14358363.html
Copyright © 2011-2022 走看看