У нас есть потоковый конвейер, для которого мы включили автоматическое масштабирование. Как правило, одного работника достаточно для обработки входящих данных, но мы хотим автоматически увеличить количество работников, если есть отставание.
Наш конвейер читает из Pubsub и записывает пакеты в BigQuery, используя задания загрузки каждые 3 минуты. Мы запустили этот конвейер, начиная с одного работника, публикуя в pubsub вдвое больше данных, чем мог бы потребить один работник. Через 2 часа автоматическое масштабирование все еще не сработало, поэтому отставание составило бы около 1 часа данных. Это кажется довольно плохим, учитывая, что автоматическое масштабирование направлено на сохранение отставания менее 10 секунд (согласно этому SO-ответу ).
В документе здесь говорится, что автоматическое масштабирование для потоковых заданий находится в режиме бета-тестирования, и известно, что оно будет детализированным, если приемники имеют большую задержку. И да, я думаю, что выполнение пакетов BigQuery каждые 3 минуты считается высокой задержкой! Есть ли какой-либо прогресс в улучшении этого алгоритма автоматического масштабирования?
Есть ли какие-нибудь обходные пути, которые мы можем сделать в это время, такие как измерение пропускной способности в другой точке конвейера? Я не смог найти никакой документации о том, как пропускная способность сообщается системе автоматического масштабирования.