我有一个Flink SourceFunction叫RequestsSource。
在来自该源的每个请求中,我想订阅一个外部数据源(出于示例的目的,它可以启动一个单独的线程并开始在该线程上生成数据)。
输出数据可以连接在一起DataStream。例如
输入请求:A,B
产生的数据:
A1
B1
A2
A3
B2
...
......等等,将新元素永久添加到DataStream中。
如何编写可以执行此操作的Flink运算符?我可以使用例如FlatMapFunction吗?
听起来你在询问一个运营商,它可以在收到订阅事件后根据与外部服务的连接发出一个或多个无限数据流。我能看到的唯一的方法是在SourceFunction或自定义Operator中完成所有工作。
我不相信异步i / o可以从单个输入事件发出无限的结果流。ProcessFunction可以做到这一点,但只能通过其onTimer方法。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。