Поскольку они связаны соединениями пересылки данных, операторы источника и плоской карты объединены в одну задачу, и то же самое относится к окну и приемнику. Но так как плоская карта и окно соединены с помощью keyBy, там требуется перестановка сети.
Таким образом, ваша работа имеет всего 4 задачи: 2 экземпляра источника плюс плоская карта и 2 экземпляра окна плюс приемник. Эти 4 задачи развернуты в 2 слотах задач, каждый из которых имеет задачу источника / плоской карты и задачу окна / приемника.
keyBy изображено там, где на диаграмме указано HA SH. keyBy не является оператором, а представляет собой описание того, как операторы до и после подключения keyBy.
Эти две строки кода
.timeWindow(Time.seconds(60))
.apply(new SumFunction())
вместе описывают оператор окна, который показан на диаграмме как mySumFunction
. Окно находится во втором задании.
Вы правы, предполагая, что для каждого отдельного ключа есть окно, и каждый из этих 100 windows содержит 5 записей.
Чтобы узнать больше о Flink, я могу порекомендовать Apache Обучение Flink , Потоковая обработка с Apache Flink и поиск сообщений Flink Forward. на YouTube.