本文介紹了將配置參數傳遞給自定義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的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,