У меня есть следующий код: -
val conf = new SparkConf()
.setAppName("Data")
.set("spark.cassandra.connection.host", "192.168.0.40,192.168.0.106,192.168.0.113")
.set("spark.cassandra.connection.keep_alive_ms", "20000")
.set("spark.executor.memory", "1g")
.set("spark.driver.memory", "2g")
.set("spark.submit.deployMode", "cluster")
.set("spark.executor.instances", "10")
.set("spark.executor.cores", "1")
.set("spark.cores.max", "10")
.set("spark.driver.cores", "3")
У меня есть 4 узла кластера с 3 ядрами в каждом.Попытка выполнить задание для запуска на 9 исполнителе в кластере с 1 ГБ ОЗУ каждый, как указано в spark.executor.memory. Когда я проверяю пользовательский интерфейс spark, он показывает, что на каждом узле занято 1 ГБ, но
На снимке экрана показано, что у меня есть 10 ядер, и каждому ядру назначено 1 ГБ, но ниже видно, что для каждого узла назначено 1 ГБ.Но когда я запускаю свое приложение, каждый исполнитель показывает 336 МБ, как мы можем видеть на следующем рисунке: -
Нужно понять, как это работаети если он потребляет 3 ГБ на каждом узле, то почему для каждого исполнителя выделено всего 336 МБ?
Спасибо,