Скажем, у меня есть Флинк SourceFunction<String>
, который называется RequestsSource
.
При каждом запросе, поступающем из этого источника, я хотел бы подписаться на внешний источник данных (в качестве примера он мог бы запустить отдельный поток и начать создавать данные в этом потоке).
Выходные данные могут быть объединены в один DataStream
.Например,
Input Requests: A, B
Data produced:
A1
B1
A2
A3
B2
...
... и т. Д., С новыми элементами, добавляемыми в DataStream навсегда.
Как мне написать оператор Flink, который может это делать?Могу ли я использовать, например, FlatMapFunction
?