Apache spark spark.cores.max是如何工作的?
我对Apache spark spark.cores.max是如何工作的?,apache-spark,Apache Spark,我对spark.cores.max定义感到困惑 我在网上看到的是 spark.cores.max represents the total number of CPU cores for the whole application 我的集群有8个工作节点和1个主节点。其中每个节点有4个内核和100 GB ram 它是指每个工作节点或所有8个工作节点中的内核总数 如果我将spark.cores.max设置为12,cores/executor为4,这意味着什么?来自spark文档: 当以“粗粒度”
spark.cores.max
定义感到困惑
我在网上看到的是
spark.cores.max represents the total number of CPU cores for the whole application
我的集群有8个工作节点和1个主节点。其中每个节点有4个内核和100 GB ram
它是指每个工作节点或所有8个工作节点中的内核总数
如果我将spark.cores.max设置为12,cores/executor为4,这意味着什么?来自spark文档:
当以“粗粒度”共享模式在独立部署群集或Mesos群集上运行时,整个群集(而不是每台机器)中请求应用程序的最大CPU内核数。如果未设置,默认值将是spark的独立群集管理器上的spark.deploy.defaultCores,或Mesos上的infinite(所有可用核心)
spark.cores.max限制spark作业将使用的磁芯数。如果不进行设置,它将使用“spark.deploy.defaultCores”值
在您的示例中,spark.executor.cores=4和spark.cores.max=12表示您的作业将有三个执行器(12/4),每个执行器有4个核心
将spark.cores.max设置为12,cores/executor为4
此属性允许您在同一个spark群集中同时运行多个作业
关于您是指整个集群中的3个执行者还是整个集群中的单个节点中的3个执行者。