簡體   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