本文介绍了将配置参数传递给自定义Flink ProcessFunction的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要能够向MyFunction
传递扩展ProcessFunction
的配置参数。在我的参数中,这是我唯一的方法吗?我不需要将它与每个元素一起传递。我可以以某种方式使用open
方法吗?
public class MyProcessFunction extends ProcessFunction<AbstractMap.SimpleEntry<Row, RowTypeInfo>, MyOutput> {
public void open(Configuration parameters) {
}
@Override
public void processElement(AbstractMap.SimpleEntry<Row, RowTypeInfo> value, Context ctx, Collector<MyOutput> out) throws Exception {
推荐答案
添加向其传递参数的构造函数是一种很好的方法。
Handling Application Parameters的Flink文档中的页面包含一些相关信息。
您可能认为可以通过某种方式利用open()
方法的Configuration parameters
参数,但这是Flink项目早期的遗留问题,Datastream API没有使用它。
这篇关于将配置参数传递给自定义Flink ProcessFunction的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!