簡體   English   中英

在哪里設置“ spark.yarn.executor.memoryOverhead”

[英]Where to set “spark.yarn.executor.memoryOverhead”

運行我的spark-scala程序時出現以下錯誤。

YarnSchedulerBackends $ YarnSchedulerEndpoint:容器因超出內存限制而被YARN殺死。 使用了2.6GB的2.5GB物理內存。 考慮提高spark.yarn.executor.memoryOverhead。

創建SparkSession時,已在程序中設置了spark.yarn.executor.memoryOverhead。

我的問題是-創建SparkSession時可以設置“ spark.yarn.executor.memoryOverhead”還是應該在運行時通過spark-submit傳遞它?

您必須在創建spark.yarn.executor.memoryOverhead時設置spark.yarn.executor.memoryOverhead。 此參數用作要為每個執行程序分配的堆外內存量(以兆字節為單位)。 這是一種內存,用於解決VM開銷,內部字符串,其他本機開銷等問題。隨着執行程序大小的增加(通常為6%至10%),內存通常會增加。

現在,該分配只能在分配執行程序時進行,而不能在運行時進行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM