Итак, у нас есть события a, b, c, x, y, z в источнике kafka в течение 10-минутного окна, и у меня есть код flink с 10-минутным окном (keyed, tumplingwindow).
У меня есть условия для стрельбы (в 10-минутном окне)
- a && b && c
- a && z
- b &&x && y
- a && e
- a && f
Очевидно, что только первые три условия будут иметь значение true в 10-минутном окне.
Я хочу, чтобы каждый из трех выполнил триггер для приемника кафки для этих событий (поэтому три (3) триггера для этого примера, отправленного в приемник кафки).
Я проверил примеры иУ меня есть полный комплект проводов с производителем, потребителем и процессором Flink.Но из любого примера не ясно, как оценить несколько независимых условий для данных в одном временном окне.
Это просто концептуальный пример.В действительности будет 200 000 - 400 000 условий для оценки по входящему потоку (миллионы событий).Кто-то упомянул, что обычно вы используете что-то вроде drools (или движка правил), но в этом конкретном случае RETE вообще не масштабируется, и рекомендовал мне проверить один из процессоров сложного потока событий -больше ориентированы на большие данные.
Извините, это уже длинный вопрос, но я хотел дать хороший контекст, чтобы эксперты по Flink могли лучше судить.Спасибо.