任务血缘

实时任务运维详情页支持查看任务内血缘和任务间血缘。

解析规则

  • 此版本仅支持解析使用了 Flink 1.12 或 1.14 版本引擎的 SQL 任务的血缘关系。血缘解析不限制表使用方式,在任务中使用流表、元数据方式或 DDL 方式血缘均可被解析。
  • 当前仅支持展示 MySQL、Oracle、Postgresql、Kudu、TiDB、Elasticsearch、HBase、Redis、Kafka、Pulsar、RocketMQ、Hive、Starrocks、Doris 数据源类型的血缘关系。
  • 使用 DDL 方式时,将按照 DDL 中的数据源连接信息与已登记的数据源进行匹配,若连接信息完全一致,则血缘信息将关联至该数据源。
  • 使用 DDL 方式时,若 connector 配置为 JDBC,则该表将被定义为 MySQL 类型表。
  • 任务血缘在任务提交上线时进行解析上报,不会解析上报未提交上线的任务版本的血缘信息。

血缘展示

任务内血缘:
任务血缘 - 图1

  • 展示任务内的表与表之间的关联关系,节点为表。节点名称按表在任务实际使用时的名称展示,如为流表则展示流库.流表,如为 DDL 则展示 DDL 中定义的表名称,如为元数据开发方式则展示三元组名称。
  • 点击节点可查看节点详情。节点详情中展示实际使用的物理表库名、表名。
  • 支持通过表名进行节点搜索。
  • 当任务为运行中状态时(启动中、运行中、停止中、停止等待中),血缘连线为实线,代表活动血缘;当任务为非运行中状态时,血缘连线为虚线,代表静默血缘。
  • 同一任务中在不同层级多次使用同一张表时,该表节点将出现多次。

任务间血缘:
任务血缘 - 图2

  • 展示任务间的血缘关系,节点为任务,连线为表(实际存在的物理表),主节点为当前任务。
  • 点击节点可查看节点任务详情。
  • 点击连线可查看连线对应的物理表详情,以及该表实际关联的上下游任务和任务中该物理表被使用的方式。
  • 支持通过任务名进行节点搜索。暂不支持通过表名进行连线搜索。支持通过表的数据源类型筛选血缘关系。
  • 当任务为运行中状态时(启动中、运行中、停止中、停止等待中),血缘连线为实线,代表活动血缘;当任务为非运行中状态时,血缘连线为虚线,代表静默血缘。
  • 同一任务最多支持查看3层上下游血缘。层级数量支持根据用户平台性能情况自行在1-5层中配置,如需调整请联系平台运维。

任务血缘搜索

任务血缘搜索功能支持通过数据源名称、数据源标识、流表名称、topic 名称、物理表名称确定要查询的资源后,获取对应资源的血缘关联的任务列表。

使用限制
  • 当前仅支持搜索 MySQL、Oracle、Postgresql、Kudu、TiDB、Elasticsearch、HBase、Redis、Kafka、Pulsar、RocketMQ、Hive、Starrocks、Doris 类型数据源或表或Topic。 其中不支持搜索 hive 数据源名称。
  • 搜索范围为本项目组内资源及其关联的任务。
操作步骤

1. 功能入口:实时运维模块一级导航栏-任务血缘搜索。

任务血缘 - 图3

2. 选择待搜索的资源类型后输入资源名称,在下拉框中选择要搜索血缘关系的具体资源。

任务血缘 - 图4

  • 搜索数据源名称和数据源标识时,下拉框中同时展示数据源类型。
  • 搜索流表名称时,下拉框中同时展示流表库及流表归属的项目-集群,如为公共流表则展示公共流表的来源项目-集群。
  • 搜索Topic名称时,下拉框中同时展示 topic 归属的数据源名称,如topic所属数据源未在平台进行登记,则展示归属数据源的url。
  • 搜索表名称时,下拉框中同时展示库名及数据源名称,如该表所属数据源未在平台进行登记,则展示归属数据源的url。

3. 选择待查询的资源后,下方展示该资源关联的任务列表。
任务血缘 - 图5