算子探查(公测)

算子探查功能可以在不修改作业的情况下看到中间结果的输出,降低排查数据正确性错误的难度,提高人效和业务的连续性,减少重点实时业务的中断时间。本文为您介绍如何进行算子探查。

背景信息

Flink作业运维时,会遇到产出结果不符合预期的情况,这类问题常称为数据正确性问题。数据正确性问题的产生原因复杂且不易定位,常见的解决方法是将SQL作业进行逻辑拆解,通过Print连接器打印每一步的结果,对数据结果进行分析,找到可能的原因。这个处理流程不仅耗费时间精力,而且可能因为测试数据与线上数据或者State不一致导致无法排查到原因。因此,此类问题的解决常需要很长的时间,并进行多次作业启停。实时计算Flink版提供了算子探查功能,可以在不修改作业的情况下,探查选中算子的输入输出情况,帮助您更好地排查数据正确性问题。

使用限制

  • 仅支持运行中的SQL作业。

  • 仅支持实时计算引擎VVR 8.0.4及以上版本作业。

  • 不支持CTAS、CDAS作业。

  • 不支持部署到Session集群的作业。

  • 在探查没有停止前,无法再次进行探查。

操作步骤

  1. 登录实时计算控制台,单击目标工作空间操作列下的控制台

  2. 在左侧导航栏上,选择运维中心 > 作业运维

  3. 单击目标作业名称,单击状态总览页签。

  4. 开启算子探查。

    1. 打开算子探查开关。

      image

    2. 单击需要进行探查的算子,支持选择多个算子。

      image

    3. 设置最大采样时间。

      支持设置1~30min的采样时间,采样过程中如果达到最大存储上限会提前终止采样。

    4. 单击开始探查探查状态变更为采样中

      说明

      在探查没有停止前,无法再次进行探查。

      image

  5. 查看探查结果。

    您可以单击提示中的TM 日志列表进入到运行日志页面,查看Log Name为inspect-taskmanager_0.out的日志。

    算子探查_中文.jpg

    结果展示如下。您可以在状态总览页签的DAG图中复制算子名称,在日志页面搜索查看具体算子的输出。

    算子探查2_中文.jpg

探查停止方式

  • 作业发生failover后自动停止(JM & TM)。

  • 达到最大存储上限会提前终止采样。

  • 达到采样时间后停止。

  • 手动停止探查。

相关文档