Задание Spark не удалось записать в Alluxio из-за DeadlineExceededException

Я запускаю задание Spark, записывающее в кластер Alluxio с 20 рабочими (Alluxio 1.6.1). Заданию Spark не удалось записать выходные данные из-за alluxio.exception.status.DeadlineExceededException. Рабочий еще жив от Alluxio WebUI. Как мне избежать этой неудачи?

alluxio.exception.status.DeadlineExceededException: Timeout writing to WorkerNetAddress{host=spark-74-44.xxxx, rpcPort=51998, dataPort=51999, webPort=51997, domainSocketPath=} for request type: ALLUXIO_BLOCK
id: 3209355843338240
tier: 0
worker_group {
  host: "spark6-64-156.xxxx"
  rpc_port: 51998
  data_port: 51999
  web_port: 51997
  socket_path: ""
}

person apc999    schedule 15.11.2018    source источник


Ответы (1)


Эта ошибка указывает на то, что время ожидания вашего задания Spark истекло при попытке записи данных в рабочий процесс Alluxio. Рабочий может быть под высокой нагрузкой или иметь медленное соединение с вашей UFS.

Тайм-аут по умолчанию составляет 30 секунд. Чтобы увеличить время ожидания, настройте alluxio.user.network.netty.timeout на стороне Spark.

Например, чтобы увеличить время ожидания до 5 минут, используйте параметр --conf для spark-submit.

$ spark-submit --conf 'spark.executor.extraJavaOptions=-Dalluxio.user.network.netty.timeout=5min' \
               --conf 'spark.driver.extraJavaOptions=-Dalluxio.user.network.netty.timeout=5min' \
               ...

Вы также можете установить эти свойства в файле spark-defaults.conf, чтобы они автоматически применялись ко всем заданиям.

Источник: https://www.alluxio.org/docs/1.6/en/Configuration-Settings.html#spark-jobs

person AAudibert    schedule 15.11.2018