Spark配置:内存/实例/核心

Osc*_*car 10 apache-spark

最近我发现自己有点不同SPARK设置之间的混淆spark.executor.memory,SPARK_WORKER_MEMORY,SPARK_MEM,SPARK_MASTER_MEMORY,和的关系SPARK_WORKER_INSTANCESSPARK_WORKER_CORES

我发现了这篇文章,但它没有讨论SPARK_MASTER_MEMORY Spark配置:SPARK_MEM与SPARK_WORKER_MEMORY

1es*_*sha 15

首先,关于术语的几句话.Spark master是从奴隶协调资源分配的应用程序.Master不执行任何计算.师父只是资源经理.

Spark worker是工作节点上的应用程序,它协调给定工作节点上的资源.

Spark执行器是由spark worker创建的应用程序,它在驱动程序的工作节点上执行任务.

有关其他详细信息,请查看此文档 - http://spark.apache.org/docs/latest/cluster-overview.html

spark.executor.memory - 是执行者的内存量.此内存用于给定的用户任务.

SPARK_WORKER_MEMORY - 工作人员可以使用多少系统内存来创建节点上的执行程序.例如,节点上有64gb.您将SPARK_WORKER_MEMORY设置为60gb.这意味着您可以创建2 x 30g执行程序或10 x 6gb执行程序,依此类推.

SPARK_MEM AFAIK已不再使用.我在当前的文档中找不到它

SPARK_MASTER_MEMORY是master的内存.不应该高:)

SPARK_WORKER_CORES是每个工作者由执行者使用的核心总数

SPARK_WORKER_INSTANCES是每个工作节点的工作者数.

所有这些参数都在这里描述 - http://spark.apache.org/docs/latest/spark-standalone.html