Поток искры замедляется

В нашем приложении spark мы используем поток Kafka и храним данные в Cassandra DB.

Во-первых, мы запустили поток без противодавления и испытали странную аномалию, когда время обработки было постоянным ~ 1 минута, однако задержка планирования увеличивалась. Таким образом очередь накапливалась, в конечном итоге сбой потока.

Есть мысли, почему это может происходить? Если это не обработка, что может вызвать такие серьезные задержки?

Затем мы попробовали ту же настройку с обратным давлением (с повышенным maxRatePerPartition) изначально все было хорошо. Противодавление сделало свою работу дросселирования, и мы смогли обрабатывать с постоянной скоростью ~ 100K / мин.

Затем, через несколько часов, что-то произошло, и скорость быстро упала до 5K / мин. Время обработки составляло всего 5-6 секунд без задержки планирования, но обратное давление абсурдно удерживало скорость на уровне 5 к / мин и никогда не увеличивалось. На самом деле не было никакой причины снижать скорость до 5K.

Наша установка:

Window: 1 minute
spark.streaming.kafka.maxRatePerPartition = 500 (4 partition * 60 sec * 500 = 120K / window)
spark.streaming.backpressure.enabled = true
spark.streaming.kafka.allowNonConsecutiveOffsets = true
spark.streaming.kafka.consumer.cache.enabled = false

Spark кластер с одним главным и двумя рабочими узлами

0 ответов

Другие вопросы по тегам