Максимальное количество потоковых записей Spark за интервал - PullRequest
0 голосов
/ 14 ноября 2018

[New to Spark]

У нас есть приложение Spark Streaming, которое читает из Kinesis и пишет в Redshift.

Конфигурация

Количество получателей = 5

Пакетный интервал = 10 минут

spark.streaming.receiver.maxRate = 2000 (записей в секунду)

В соответствии с этой конфигурацией максимальное количество записей, которые можно прочитать в одной партии, можно рассчитать по следующей формуле:

Max records per batch = batch_interval * 60 (convert mins to seconds) * 5 (number of receivers) * 2000 (max records per second per receiver)

10 * 60 * 5 * 2000 = 6,000,000

Но фактическое количество записей превышает максимальное число.

Партия I - 6 005 886 записей

Партия II - 6 001 623 записей

Пакет III - 6 010 148 записей

Обратите внимание, что приемники даже не читают с максимальной скоростью, количество записей, считываемых одним приемником, составляет около 1900 в секунду.

Почему это происходит?

...