繁体   English   中英

如何在本地模式下更改执行程序的数量?

[英]How to change number of executors in local mode?

是否可以使用一些 Spark Conf 设置在本地模式下为 Spark Streaming 应用程序设置多个执行程序? 目前,例如,当我将spark.executor.instances参数更改为 4 时,我看不到 Spark UI 在性能或执行程序数量增加方面的任何变化。

本地模式是一种开发工具,所有组件都在一台机器上进行模拟。 由于单个 JVM 意味着单个 executor 改变 executor 的数量是不可能的,因此spark.executor.instances不适用。

您在local模式下所能做的就是通过修改主 URL 来增加线程数 - local[n]其中n是线程数。

根据定义,本地模式是在单个 JVM 中运行的“伪集群”。 这意味着最大执行程序数为 1。

如果你想在本地机器上试验多个 executor,你可以做的是创建集群,在本地机器上运行几个 worker。 正在运行的实例数是您的任务的最大执行程序数。

spark.executor.instances在本地模式下不受尊重。

参考 - https://books.japila.pl/apache-spark-internals/local/?h=local

本地模式:在这种非分布式单 JVM 部署模式中,Spark 在同一个 JVM 中生成所有执行组件——驱动程序、执行程序、LocalSchedulerBackend 和主节点。 默认并行度是主 URL 中指定的线程数。 这是使用驱动程序执行的唯一模式。

因此,您可以通过将主 url 作为local[n]传递来将 JVM 中的线程数增加到 n。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM