Я замечаю какое-то странное поведение, у меня есть искровая работа, которая считывает данные и выполняет некоторую группировку, упорядочение и объединение и создает выходной файл.
Проблема заключается в том, что когда я запускаю одно и то же задание на пряже с памятью больше, чем есть в среде, например, кластер имеет 50 ГБ, и я отправляю spark-submit с исполнителем около 60 ГБ и памятью драйвера 4 ГБ. Мои результаты уменьшаются, похоже, что один из разделов данных или задач потерян во время обработки.
driver-memory 4g --executor-memory 4g --num-executors 12
Я также замечаю предупреждающее сообщение о драйвере -
WARN util.Utils: Truncated the string representation of a plan since it was too large. This behavior can be adjusted by setting 'spark.debug.maxToStringFields' in SparkEnv.conf.
но когда я запускаю с ограниченными исполнителями и примером памяти 15 ГБ, это работает, и я получаю точные строки/данные. нет предупреждающего сообщения.
driver-memory 2g --executor-memory 2g --num-executors 4
какие-либо предложения, нам не хватает некоторых настроек в кластере или что-то в этом роде? Обратите внимание, что моя работа успешно завершается в обоих случаях. Я использую искру версии 2.2.