System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据血缘的构建方法及相关装置制造方法及图纸_技高网

一种数据血缘的构建方法及相关装置制造方法及图纸

技术编号:40665906 阅读:2 留言:0更新日期:2024-03-18 19:00
本申请实施例提供了一种数据血缘的构建方法及相关装置,涉及计算机技术领域。所述方法包括:获取包括与底层运行环境对应的有向无环图的数据血缘信息,通过反射方式解析数据血缘信息,从中识别和提取数据源信息和数据接收器信息,将数据源信息和数据接收器信息发送到分布式发布‑订阅消息系统中,构建数据血缘。由此,本申请实施例利用底层的有向无环图作为数据流的来源,可以自动维护数据血缘。此外,通过反射方式可以在底层运行时动态检查、获取和操作程序的结构,自动解析数据血缘信息。将数据源和数据接收器信息下发到分布式发布‑订阅消息系统,可以方便后续及时消费实时任务的数据血缘信息,由此实现数据血缘的自动构建和维护。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种数据血缘的构建方法及相关装置


技术介绍

1、近年来,flink作为一种流式处理引擎,取得了长足的发展。flink实时数仓是使用apache flink构建的实时数据处理系统,具有处理高速流数据、提供实时数据分析、实时数据计算和实时数据采集等能力,目前,越来越多的公司开始构建基于flink实时数仓,以满足快速响应和实时分析的需求。

2、为保证构建的flink实时数仓准确,需要以实时的数据血缘作为支撑。数据血缘是指数据流从产生、加工融合、流转,到最终输出数据流之间形成一种关联关系。目前,数据血缘的获取通常采用手动记录和文档化的方式进行。开发人员和数据工程师会手动维护数据流的来源和转换过程,并将其记录在文档或注释中。这种方式存在人工维护的局限性,易于出错,且随着数据流变得复杂和庞大,很难跟踪和更新数据血缘。


技术实现思路

1、本申请实施例提供了一种数据血缘的构建方法及相关装置,用于自动维护数据血缘。此外,还能够基于解析基于flink结构化查询语言(structured query language,sql)和flink stream进行数据处理的数据流。

2、第一方面,本申请实施例提供了一种数据血缘的构建方法,所述方法包括:

3、获取数据血缘信息,所述数据血缘信息包括与数据流分布式计算引擎底层运行环境对应的有向无环图,所述有向无环图包括数据流的转换操作、血缘关系以及组件信息;

4、基于反射方式解析所述数据血缘信息,并从解析后的数据血缘信息中提取出数据源信息和数据接收器信息;

5、将所述数据源信息和数据接收器信息发送到分布式发布-订阅消息系统中,构建所述数据血缘。

6、可选地,所述获取数据血缘信息,包括:

7、封装多种底层运行环境;所述多种底层运行环境包括用于流式stream数据流的运行环境和用于结构化查询语言sql数据流的运行环境;

8、确定当前底层运行环境,基于封装后的多种底层运行环境,获取与所述当前底层运行环境对应的有向无环图。

9、可选地,所述数据血缘信息还包括:

10、注解信息,所述注解信息用于对目标组件进行注解,所述目标组件包括所述数据流分布式计算引擎不支持数据组件、非流动数据组件和自定义数据读写方式组件。

11、可选地,所述基于反射方式解析所述数据血缘信息,包括:

12、注册监听器,以监听所述数据血缘信息解析以及实时程序的相关信息;

13、基于所述反射方式解析所述数据血缘信息,获取所述数据血缘信息中每个节点的节点信息,以根据所述每个节点的节点信息获取所述实时程序的执行逻辑;

14、获取注解信息和所述实时程序的相关信息;将所述实时程序的相关信息、每个节点的节点信息和所述注解信息作为所述数据源信息和数据接收器信息。

15、可选地,所述构建所述数据血缘,包括:

16、启动实时程序,从所述分布式发布-订阅消息系统中获取所述数据源信息和数据接收器信息;

17、确定节点和边;所述节点表示数据流动关系,所述边表示数据依赖关系;并基于所述节点和边,构建所述数据血缘。

18、可选地,所述方法还包括:

19、将构建好的数据血缘写入到预设数据库中,以进行可视化展示。

20、第二方面,本申请实施例提供了一种数据血缘的构建装置,所述装置包括:

21、获取单元,用于获取数据血缘信息,所述数据血缘信息包括与数据流分布式计算引擎底层运行环境对应的有向无环图,所述有向无环图包括数据流的转换操作、血缘关系以及组件信息;

22、解析单元,用于基于反射方式解析所述数据血缘信息,并从解析后的数据血缘信息中提取出数据源信息和数据接收器信息;

23、构建单元,用于将所述数据源信息和数据接收器信息发送到分布式发布-订阅消息系统中,构建所述数据血缘。

24、可选地,所述获取单元具体用于:

25、封装多种底层运行环境;所述多种底层运行环境包括用于流式stream数据流的运行环境和用于结构化查询语言sql数据流的运行环境;

26、确定当前底层运行环境,基于封装后的多种底层运行环境,获取与所述当前底层运行环境对应的有向无环图。

27、第三方面,本申请实施例提供了一种电子设备,所述电子设备包括:

28、存储器和处理器,所述存储器与所述处理器耦合;

29、所述存储器存储有程序指令,当所述程序指令由所述处理器执行时,使得所述电子设备执行第一方面任一项所述的方法。

30、第四方面,本申请实施例提供了一种计算机可读存储介质,其特征在于,包括计算机可读指令,当所述计算机可读指令在计算设备上运行时,使得所述计算设备执行第一方面任一项所述的方法。

31、有益效果:

32、本申请实施例提供了一种数据血缘的构建方法及相关装置。在执行所述方法,获取包括与底层运行环境对应的有向无环图的数据血缘信息,通过反射方式解析数据血缘信息,从中识别和提取数据源信息和数据接收器信息,将数据源信息和数据接收器信息发送到分布式发布-订阅消息系统中,构建数据血缘。由此,本申请实施例利用底层的有向无环图作为数据流的来源,可以自动维护数据血缘。此外,通过反射方式可以在底层运行时动态检查、获取和操作程序的结构,自动解析数据血缘信息。将数据源和数据接收器信息下发到分布式发布-订阅消息系统,可以方便后续及时消费实时任务的数据血缘信息,由此实现数据血缘的自动构建和维护。

本文档来自技高网...

【技术保护点】

1.一种数据血缘的构建方法,其特征在于,所述方法包括:

2.根据权利要求1所述方法,其特征在于,所述获取数据血缘信息,包括:

3.根据权利要求2所述方法,其特征在于,所述数据血缘信息还包括:

4.根据权利要求1所述方法,其特征在于,所述基于反射方式解析所述数据血缘信息,包括:

5.根据权利要求1所述方法,其特征在于,所述构建所述数据血缘,包括:

6.根据权利要求1-5任一项所述方法,其特征在于,所述方法还包括:

7.一种数据血缘的构建装置,其特征在于,所述装置包括:

8.根据权利要求7所述装置,其特征在于,所述获取单元具体用于:

9.一种电子设备,其特征在于,所述电子设备包括:

10.一种计算机可读存储介质,其特征在于,包括计算机可读指令,当所述计算机可读指令在计算设备上运行时,使得所述计算设备执行权利要求1-6任一项所述的方法。

【技术特征摘要】

1.一种数据血缘的构建方法,其特征在于,所述方法包括:

2.根据权利要求1所述方法,其特征在于,所述获取数据血缘信息,包括:

3.根据权利要求2所述方法,其特征在于,所述数据血缘信息还包括:

4.根据权利要求1所述方法,其特征在于,所述基于反射方式解析所述数据血缘信息,包括:

5.根据权利要求1所述方法,其特征在于,所述构建所述数据血缘,包括:

6.根据权利要求...

【专利技术属性】
技术研发人员:王禹
申请(专利权)人:北京搜狐互联网信息服务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1