Flink Windows производительность хит - PullRequest
0 голосов
/ 23 октября 2018

Каков разумно ожидаемый прирост производительности при использовании окон обработки во Flink? У меня есть задание flink , которое может обрабатывать около 25 тыс. Записей без использования окна .

Как только я добавляю временное окно к заданию, производительность падает примерно до 13K записей даже без обработки выходных данных.Использование разных периодов времени (1 с, 10 с, 120 с), по-видимому, не имеет значения, поскольку все они дают схожие результаты.

Чего я хочу добиться, так это просто получить самую последнюю запись, имеющую один и тот же Id в течение каждой секунды.В настоящее время окно выглядит примерно так:

stream.keyBy(Record::getId)
.window(TumblingProcessingTimeWindows.of(Time.seconds(1)))
.reduce((rec1, rec2) -> rec2);

Является ли снижение производительности на ~ 50% разумной "ценой" для использования окон?

...