Apache flink 我可以在Flink中ScalarFunction的open函数中初始化数据映射吗
我实现了一个定制的ScalarFunction类,我想初始化一个hashmap,在open()函数中从数据库读取数据,但它总是卡在那里,所以像这样使用open()函数是正确的方法吗?以及open()函数将被调用多少次,一次或与eval()函数相同。 我的示例代码如下所示:Apache flink 我可以在Flink中ScalarFunction的open函数中初始化数据映射吗,apache-flink,flink-streaming,blink,Apache Flink,Flink Streaming,Blink,我实现了一个定制的ScalarFunction类,我想初始化一个hashmap,在open()函数中从数据库读取数据,但它总是卡在那里,所以像这样使用open()函数是正确的方法吗?以及open()函数将被调用多少次,一次或与eval()函数相同。 我的示例代码如下所示: public class GenNameUDF extends ScalarFunction { @Override public void open(FunctionContext context) thr
public class GenNameUDF extends ScalarFunction {
@Override
public void open(FunctionContext context) throws Exception {
super.open(context);
CommonClass.map = initMap();//here will read data from db
}
public String eval(String pubIp) {
return todo();
}
}