Spark [Streaming] не планирует работы - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть приложение для потокового воспроизведения, которое использует данные из нескольких тем Kafka, очищает данные и передает их в несколько тем Kafka (с 12 разделами) и HBase.Интервал между партиями составляет 1 секунду.Один Dstream создается для каждой темы Kafka, а затем объединяется в один Dstream.Не выполняются сложные операции или агрегации, и вся логика включает в себя группу maps и, наконец, foreachRDD на DStream, чтобы вызвать action.

. Моя проблема в том, что после примерно 300 пакетов искрамастер делает паузу и не планирует никаких заданий на несколько минут.По сути, вместо планирования заданий каждую 1 секунду (интервал между пакетами), спарк занимает несколько минут, чтобы даже планировать задания для каждого пакета.Никаких новых заданий в интерфейсе Spark не отображается даже после нескольких обновлений.

На первый взгляд, я думал, что искровой интерфейс не может обновляться с такой высокой скоростью, но наблюдение за последующими системами подтвердило, что искровые задания не были выполнены.В каждом запланированном пакете все задачи и этапы завершаются с интервалом в 1 секунду, и ничего не ставится в очередь.

Сведения о кластере

Кластер Spark

Версия Spark- 2.2.0Clustermanager - Искра АвтономныйУзлы - 3 узла, каждый с 16 физическими ядрами и 128 ГБ ОЗУРабочие - 4 рабочих на каждом узле, каждое с 3 ядрами и 5 ГБ оперативной памяти.

Кластер Kafka

Запуск в одной среде с 3 брокерамиКафка версия - 0.10.0Количество тем - 6Коэффициент тиражирования - 3Разделов - по 1 в каждой теме (для поддержания порядка обработки в спарке)

Было бы замечательно, если бы кто-то мог пролить свет на то, является ли это проблемой в Spark 2.2, поскольку тот же код работал без какой-либо задержки планирования в кластере spark 1.6.2.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...