【问题标题】:Naming operators, sources, sinks and patterns to be shown in Flink Execution Plan UI在 Flink 执行计划 UI 中显示的命名运算符、源、接收器和模式
【发布时间】:2017-10-26 20:17:55
【问题描述】:

我只想为运营商和消息来源命名。举个例子吧

这是执行计划的截图,我从 Flink Dashboard 获取。在这里,我有 2 个 DataStreams 来源,然后我加入了它们。我的问题是,我可以将这些来源命名为 EcgStreamSp02 Stream 例如并加入为 Join1

我问这个问题的原因是因为它使可视化更容易。另外,当我浏览 Opsclarity page 时,在页面末尾,他们提到了以下内容

注意 task_name 和 operator_name 已经被压缩,所以我们可以 延迟时间仍能正确区分任务和算子 跨任务和操作员聚合。但是这些压缩的名字会 与 Flink UI 中看到的不匹配,这将显示一个片段 Scala 代码作为运算符名称。 如果您需要这些名称 在公制中有意义,您应该在 Flink 中提供名称 您的应用程序代码。这个压缩值只发生在那些 非常长的默认名称,否则不会是合法指标 价值观。

我还有另一个问题,那就是当我为 CEP 制作一个模式时,执行计划 UI 只是将它显示为一个模式。有什么方法可以显示那种模式是什么A B+ C? D 。此外,如果我们有多个模式,我们应该能够将其命名为 Patterns{1..n}

【问题讨论】:

    标签: apache-flink flink-streaming flink-cep


    【解决方案1】:

    通过使用name() 而不是uid() 解决了这个问题,如下所示

    // getting RR interval stream
    DataStream<RRIntervalStreamEvent> rrIntervalStreamEventDataStream = envrionment.addSource(new RR_interval_Gen()).name("RR Interval stream");
    
    
    System.out.println("getting transformation for stream 1 = " + rrIntervalStreamEventDataStream.getTransformation());
    // getting QRS interval stream
    
    DataStream<qrsIntervalStreamEvent> qrsIntervalStreamEventDataStream = envrionment.addSource(new Qrs_interval_Gen()).name("qrs Interval stream");
    

    输出图如下所示

    【讨论】:

      【解决方案2】:

      要为您的操作员分配更好的名称,请参阅the documentation。您应该这样做,不仅因为它使执行计划更具可读性,还因为它会使您的保存点随着应用程序的发展而更加稳健地恢复 (docs)。

      【讨论】:

        【解决方案3】:

        根据@alpinegizmo 的建议,我已将 UID 添加到源流中,如下所示

        // getting RR interval stream
        DataStream<RRIntervalStreamEvent> rrIntervalStreamEventDataStream = envrionment.addSource(new RR_interval_Gen()).uid("RR interval stream");
        
        // getting QRS interval stream
        
         DataStream<qrsIntervalStreamEvent> qrsIntervalStreamEventDataStream = envrionment.addSource(new Qrs_interval_Gen()).uid("qrs Interval stream");
        

        但是执行图不显示这些uid的

        下面sout的结果也是3

          System.out.println("id for stream 1 is " + stream1.getId());
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-05-17
          • 2018-04-10
          • 2020-05-06
          • 2019-07-19
          • 2018-12-07
          • 2013-04-06
          • 1970-01-01
          • 2018-08-30
          相关资源
          最近更新 更多