FlinkSQL 动态设置 sink.label-prefix 导入数据到 Doris

在使用 FlinkSQL 将数据导入 Doris 时,可以利用动态参数来设置 sink.label-prefix,实现动态控制数据标签前缀的功能,避免每次修改标签都需要重新编译和部署代码。

具体步骤

  1. 定义动态参数:

    SET execution.runtime-type=streaming;
    SET sink.label-prefix=my_dynamic_prefix;
    
  2. 创建 TableEnvironment 并传入动态参数:

    TableEnvironment tEnv = TableEnvironment.create(
        EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build());
    tEnv.getConfig().getConfiguration().setString("execution.runtime-type", "${execution.runtime-type}");
    tEnv.getConfig().getConfiguration().setString("sink.label-prefix", "${sink.label-prefix}");
    
  3. 获取动态参数并设置 Sink 的 label-prefix:

    String labelPrefix = tEnv.getConfig().getConfiguration().getString("sink.label-prefix", "");
    DorisSink dorisSink = new DorisSink(dorisConf);
    dorisSink.setLabelPrefix(labelPrefix);
    

优势

  • 动态设置 sink.label-prefix,无需重新编译和部署代码。
  • 方便灵活地控制数据标签前缀。

注意

  • 使用动态参数时,需要确保参数名称与代码中使用的参数名称一致。
  • 动态参数的值可以在运行时进行修改。

通过以上步骤,就可以在 FlinkSQL 中动态地设置 sink.label-prefix,实现灵活的数据标签管理。


原文地址: https://www.cveoy.top/t/topic/ngfD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录