将配置参数传递给自定义Flink ProcessFunction

Pass configuration parameter to custom Flink ProcessFunction(将配置参数传递给自定义Flink ProcessFunction)

本文介绍了将配置参数传递给自定义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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:将配置参数传递给自定义Flink ProcessFunction

基础教程推荐