В настоящее время у нас есть процесс потока данных, в котором у нас есть GroupByKey
, но DoPar
после группировки получает слишком много значений для каждого ключа, и мы хотели знать, есть ли для этого хорошее решение. Насколько я могу судить, невозможно установить максимальное количество значений для каждого окна.
Сейчас мы изучаем 3 варианта:
- Меньшие окна - мы думаем, что у нас все еще могут быть проблемы с этим, поскольку события могут сгруппироваться во времени.
- Добавление случайного значения в каждый ключ для разделения ключей - это также не идеально, потому что, когда у нас будет меньше событий, у нас будет слишком мало значений для каждого ключа. Также мы не можем регулировать количество разделов, когда количество событий растет экспоненциально.
- Какой-то причудливый запуск или использование комбайнера - возможно, лучшее решение, но не знаю, как это сделать.
Есть ли стандартный способ или передовая практика для этого?