У меня есть задание потока данных, которое читает JSON из 3 тем PubSub, объединяя их в одну, применяя некоторые преобразования и сохраняя в BigQuery.
Я использую GlobalWindow со следующей конфигурацией.
.apply(Window.<PubsubMessage>into(new GlobalWindows()).triggering(AfterWatermark.pastEndOfWindow()
.withEarlyFirings(AfterFirst.of(AfterPane.elementCountAtLeast(20000),
AfterProcessingTime.pastFirstElementInPane().plusDelayOf(durations))))
.discardingFiredPanes());
Задание выполняется со следующей конфигурацией
Max Workers : 20
Disk Size: 10GB
Machine Type : n1-standard-4
Autoscaling Algo: Throughput Based
Проблема, с которой я сталкиваюсь, заключается в том, что после обработки нескольких сообщений ( около 80k) задание перестает читать сообщения из PubSub. В одной из этих тем имеется очередь из почти 10 миллионов сообщений, но задание потока данных не читает сообщения и не выполняет автоматическое масштабирование.
Я также проверил загрузку ЦП каждого работника, и это также зависает в одном ди git после первоначального пакета.
Я пытался изменить тип машины и максимальную рабочую конфигурацию, но, похоже, ничего не работает.
Как мне подойти к этой проблеме?