Что такое spark.driver.memoryOverhead в Spark 3?

Конфигурация Spark

Spark позволяет настроить систему в соответствии с вашими потребностями. Одно из мест для настройки системы — это Spark Properties.

Spark Properties контролируют большинство параметров приложения и могут быть установлены с помощью SparkConf код> объект. Одно из этих свойств - spark.driver.memory.OverHead .

spark.driver.memoryOverHead позволяет вам установить память, используемая каждым процессом драйвера Spark в кластерном режиме. Это память, которая учитывает такие вещи, как накладные расходы виртуальной машины , интернированные строки , другие собственные накладные расходы и т. Д. — это имеет тенденцию расти вместе с размером исполнителя (обычно 6-10%). Параметр spark.driver.memoryOverHead в настоящее время поддерживается в YARN и Kubernetes; он доступен, начиная с версии Spark 2.3.0.

Память, назначенная с помощью spark.driver.memoryOverHead , является памятью без кучи поверх памяти, назначенной с помощью spark.driver.memory . Если явно не задано, по умолчанию используется driverMemory * 0.10, минимум 384.

Формат ввода памяти

Используйте следующий формат для установки памяти:

Формат Описание
1b байтов
1k или 1kb kibibytes = 1024 bytes
1 м или 1 МБ мебибайт = 1024 кибибайта
1 г или 1 ГБ гибибайт = 1024 мегибайта
1t или 1tb tebibytes = 1024 гибибайта
1p или 1pb pebibytes = 1024 tebibytes

Как установить накладные расходы на память драйвера

Вы можете установить накладные расходы на память драйвера с помощью Spa rkConf объект. Вот пример кода:

  conf = new SparkConf () conf.set ('spark.driver.memoryOverhead', '15g')  

Или вы можете динамически загружать свойство:

  ./bin/spark-submit --name "My app" --master local [4] --conf  spark.driver.memoryOverhead = 15g  

Вы можете использовать spark-submit , чтобы указать любое свойство Spark с помощью - conf / -c , а затем указав его аргумент после знака = . Запуск - help покажет вам весь список этих параметров.

Оцените статью
nanomode.ru
Добавить комментарий