当前位置: 首页 > 知识库问答 >
问题:

如何在独立集群模式下为每个工作者分配更多的执行者?

鲁阳焱
2023-03-14
spark.executor.cores = "15"
spark.executor.instances = "10"
spark.executor.memory = "10g"

当Spark应用程序提交到集群时,这些设置在sparkcontext上设置。

共有1个答案

谯和煦
2023-03-14

首先需要配置spark独立集群,然后设置要运行的每个spark应用程序所需的资源量。

为了配置集群,您可以尝试以下操作:

> conf/spark-env.sh中的

  • :

      null
    val conf = new SparkConf()
                 .setMaster(...)
                 .setAppName(...)
                 .set("spark.executor.memory", "2g")
                 .set("spark.cores.max", "10")
    

  •  类似资料:
    • > 执行者为每个应用程序。那么工人的角色是什么呢?它是否与执行者协调并将结果反馈给驱动程序?还是司机直接找被执行人对话?如果是的话,那么工人的目的是什么呢? 如何控制申请执行人数? 任务可以在执行器中并行运行吗?如果是,如何配置执行器的线程数? 示例2与示例1相同的集群配置,但我使用以下设置运行一个应用程序--executor-cores10--total-executor-cores10。 示例

    • 如何确定spark独立群集模式上的工作线程数?在独立群集模式下添加工作线程时,持续时间将缩短。 例如,对于我的输入数据3.5 G,WordCount需要3.8分钟。但是,在我添加了一个内存为4 G的工作器后,需要2.6分钟。 增加调谐火花的工人可以吗?我正在考虑这方面的风险。 我的环境设置如下:, 内存128克,16个CPU,用于9个虚拟机 输入数据信息 HDFS中的3.5 G数据文件

    • 从本文来看,默认情况下,工作节点使用该节点的所有内存(减去1 GB)。但是我明白,通过使用,我们可以使用更少的内存。例如,如果节点的总内存为32 GB,但我指定为16 GB,那么Spark worker在该节点上使用的内存不会超过16 GB? 但是执行人呢?假设我希望每个节点运行2个执行器,那么可以通过在期间将执行器内存指定为的一半来实现吗?如果我希望每个节点运行4个执行器,可以通过将执行器内存指

    • 抛出错误 到目前为止,我在Hadoop中只有start-dfs.sh,在Spark中并没有真正配置任何内容。我是否需要使用YARN集群管理器来运行Spark,以便Spark和Hadoop使用相同的集群管理器,从而可以访问HDFS文件? 我尝试按照tutorialspoint https://www.tutorialspoint.com/Hadoop/hadoop_enviornment_setup

    • 我有一个Spring Web应用程序(内置在maven中),我用它连接到我的火花集群(4个工作人员和1个主机)和我的cassandra集群(4个节点)。应用程序启动,工作人员与主机通信,cassandra集群也在运行。然而,当我通过我的web应用程序的界面进行PCA(火花mllib)或任何其他计算(集群、皮尔逊、斯皮尔曼)时,我得到以下错误: java.lang.ClassCastExceptio