本申请涉及大数据,尤其涉及一种数据血缘分析方法、装置、数据血缘分析设备及存储介质。
背景技术:
1、数据血缘是指数据的全生命周期中,数据从产生、处理、加工、融合、流转到最终消亡,数据之间自然形成一种关系,通过对数据血缘的追踪和分析,可以更好地了解数据的流转过程,从而提高应用场景中所使用的数据的可信度和可靠性。
2、目前相关技术中,通常采用sql语句(structured query language,结构化查询语句)的解析和基于抽象语法树的解析,但在实际应用中,sql语句解析方法无法对多个类型数据关系进行解析,同时抽象语法树解析方法,能支持解析血缘关系的数据类型有限。
3、因此,当前的数据血缘的解析方法均存在场景应用限制,不具备通用性。
4、申请内容
5、本申请的主要目的在于提供一种数据血缘分析方法、装置、数据血缘分析设备及存储介质,旨在解决当前数据血缘解析方法的通用性差的技术问题。
6、为实现上述目的,本申请提供一种数据血缘分析方法,所述数据血缘分析方法包括以下步骤:
7、获取不同类型的异构数据源的数据,并将所述异构数据源的数据转换为统一类型的临时视图表,并确定所述异构数据源的数据和所述临时视图表之间的映射关系;
8、获取数据处理任务的逻辑执行计划,并通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系;
9、根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系。
10、可选地,所述根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系的步骤,包括:
11、根据所述处理数据的数据血缘关系,确定所述处理数据的字段信息,以及确定与所述字段信息存在映射关系的数据表信息;
12、根据所述字段信息和所述数据表信息,解析来自不同类型的异构数据源的数据处理过程,以及解析得到所述处理过程所涉及的外部源数据和外部目标数据,以及所述处理过程中所述数据表信息的转化关系;
13、根据所述外部源数据、所述外部目标数据和所述转化关系,确定不同类型的异构数据源之间的数据血缘关系。
14、可选地,所述根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系的步骤之后,所述方法还包括:
15、将所述数据血缘关系所对应的数据处理任务,以及所述数据血缘关系所涉及的数据进行图数据转化,得到关系存储表,以构建关联节点的方式存储所述数据血缘关系。
16、可选地,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤,包括:
17、通过遍历所述逻辑执行计划,确定所述数据处理任务中涉及的目标数据信息和源数据信息,以及所述目标数据信息和所述源数据信息之间的转化信息;
18、根据所述转化信息,确定存在关联关系的目标数据和源数据,并建立起所述存在关联关系目标数据和源数据的数据血缘关系。
19、可选地,所述通过遍历所述逻辑执行计划,确定所述数据处理任务中涉及的目标数据信息和源数据信息,以及所述目标数据信息和所述源数据信息之间的转化信息的步骤之前,所述方法还包括:
20、通过遍历所述逻辑执行计划,确定所述逻辑执行计划对应树状结构中的根节点和叶节点;
21、根据所述根节点,确定所述数据处理任务中涉及的目标数据信息,以及根据所述叶节点,确定所述数据处理任务中涉及的源数据信息;
22、根据所述根节点和所述叶节点之间的数据转化情况,确定所述目标数据信息和所述源数据信息之间的转化信息。
23、可选地,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤,还包括:
24、通过遍历所述逻辑执行计划,对所述逻辑执行计划所对应的数据处理过程的树状结构进行分层解析,得到分层解析结果;
25、根据所述分层解析结果,确定多个数据处理任务之间的层级关系,并根据所述层级关系,分析各数据处理任务之间存在的任务关联关系;
26、根据所述任务关联关系,统计所述各数据处理任务之间的数据处理分支,并将各数据处理分支进行统一记录处理,以确定所述各数据处理任务所涉及的数据的数据血缘关系。
27、可选地,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤之后,所述方法还包括:
28、将不同类型的异构数据源中的数据进行解析,并构建得到分属不同数据类型的数据表;
29、对所述数据表内的数据进行内容识别,得到数据含义识别结果,并对所述数据表内的数据进行字段识别,得到数据形式识别结果;
30、根据所述含义识别结果和所述数据形式识别结果,将所述数据表转换为预设格式数据对应的临时视图表。
31、此外,为实现上述目的,本申请还提供一种数据血缘分析装置,所述数据血缘分析装置包括:
32、转换模块,用于获取不同类型的异构数据源的数据,并将所述异构数据源的数据转换为统一类型的临时视图表,并确定所述异构数据源的数据和所述临时视图表之间的映射关系;
33、获取模块,用于获取数据处理任务的逻辑执行计划,并通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系;
34、确定模块,用于根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系。
35、此外,为实现上述目的,本申请还提供一种数据血缘分析设备,所述数据血缘分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据血缘分析程序,所述数据血缘分析程序配置为实现如上所述的数据血缘分析方法的步骤。
36、此外,为实现上述目的,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据血缘分析程序,所述数据血缘分析程序被处理器执行时实现如上所述的数据血缘分析方法的步骤。
37、本申请通过获取不同类型的异构数据源的数据,并将所述异构数据源的数据转换为统一类型的临时视图表,并确定所述异构数据源的数据和所述临时视图表之间的映射关系;获取数据处理任务的逻辑执行计划,并通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系;根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系,从而实现通过临时视图表作为中转信息,建立起不同异构数据源之间的映射关系,以及综合数据血缘关系,从而可确定出异构数据源之间的数据血缘关系,因此,使得数据血缘的解析方法能够应对数据类型不同类型的异构数据源,并可通过临时视图表确定数据血缘关系,以此提高了数据血缘的解析方法的通用性。
技术实现思路
1.一种数据血缘分析方法,其特征在于,所述数据血缘分析方法包括以下步骤:
2.如权利要求1所述的数据血缘分析方法,其特征在于,所述根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系的步骤,包括:
3.如权利要求1所述的数据血缘分析方法,其特征在于,所述根据所述映射关系和所述处理数据的数据血缘关系,确定不同类型的异构数据源之间的数据血缘关系的步骤之后,所述方法还包括:
4.如权利要求1所述的数据血缘分析方法,其特征在于,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤,包括:
5.如权利要求4所述的数据血缘分析方法,其特征在于,所述通过遍历所述逻辑执行计划,确定所述数据处理任务中涉及的目标数据信息和源数据信息,以及所述目标数据信息和所述源数据信息之间的转化信息的步骤之前,所述方法还包括:
6.如权利要求1所述的数据血缘分析方法,其特征在于,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤,还包括:
7.如权利要求1所述的数据血缘分析方法,其特征在于,所述通过遍历所述逻辑执行计划,确定所述数据处理任务所涉及的处理数据的数据血缘关系的步骤之后,所述方法还包括:
8.一种数据血缘分析装置,其特征在于,所述数据血缘分析装置包括:
9.一种数据血缘分析设备,其特征在于,所述数据血缘分析设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据血缘分析程序,所述数据血缘分析程序配置为实现如权利要求1至7中任一项所述的数据血缘分析方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据血缘分析程序,所述数据血缘分析程序被处理器执行时实现如权利要求1至7中任一项所述的数据血缘分析方法的步骤。