flink周边使用技巧与汇总


提示:以下是本篇文章正文内容,下面案例可供参考。flink1.15+

一、flink侧边输出(数据分流)

二、在重写方法中获取参数

使用场景:在flink自定义sink时需要获取账号密码等信息,可以参数中获取

 @Override
        public void open(Configuration parameters) throws Exception {
   
            super.open(parameters);
            RuntimeContext runtimeContext = getRuntimeContext();

            // 从配置中读取 信息
            String nodeUrls = runtimeContext.getExecutionConfig().getGlobalJobParameters().get("address");
          
            // 从配置中读取 用户名和密码
            username = runtimeContext.getExecutionConfig().getGlobalJobParameters().get("Username");
            password = runtimeContext.getExecutionConfig().getGlobalJobParameters().get("Password");
           //下面是业务处理
        }

核心是通过运行时上下文获取:runtimeContext.getExecutionConfig().getGlobalJobParameters().get("XXX");

三、其他

A).对sink 算子起别名

默认情况下sink 是没有名称的。例如下面这个sink多个外部数据库都是:Sink: Unnamed
KeyedProcess -> (Filter -> Process -> Sink: Writer -> Sink: Committer, Filter -> Sink: Unnamed, Filter -> Sink: Unnamed)

可以通过.name("sink_Mysql")给sink起别名,知道此sink要写哪或目的。
DataStream.addSink(new 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值