一种数据血缘关系查询方法及系统技术方案

技术编号:35183900 阅读:19 留言:0更新日期:2022-10-12 17:53
本发明专利技术提供一种数据血缘关系查询方法及系统,该方法包括:基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,其中,所述目标关系数据库是通过解析历史查询语句信息得到的数据血缘关系构建得到的;根据所述关系节点信息,生成所述待查询表的父子树形结构语法树;根据所述父子树形结构语法树,获取所述待查询表的数据血缘关系结果。本发明专利技术通过对历史查询语句信息解析,将解析得到的各个表之间的数据血缘关系,以父子树形式存储在关系数据库中,避免了现有依靠人工进行数据血缘关系的查询过程,提供了数据查询效率。询效率。询效率。

【技术实现步骤摘要】
一种数据血缘关系查询方法及系统


[0001]本专利技术涉及数据处理
,尤其涉及一种数据血缘关系查询方法及系统。

技术介绍

[0002]在实际生产过程中,上游系统经常发生表变更的情况,上游系统的源表变更(包括更改字段,取消表下传功能等),必然影响下游系统的目标表使用者。由于下游系统中已保存的目标表的加工语句众多,且语句复杂,当下游系统使用某张目标表时,若上游系统的源表发生变更,需要分析各个表之间的数据血缘关系,根据下游系统自身的加工语句,查询上游系统中对目标表造成影响的源表和功能变更。
[0003]现有数据血缘关系分析方法,主要是通过人工查询的方式,从下游系统的目标表出发,逐步查询对其影响的源表,极大的耗费人力、时间,影响开发进度,且对业务响应慢,降低整体体验。
[0004]因此,现在亟需一种数据血缘关系查询方法及系统来解决上述问题。

技术实现思路

[0005]针对现有技术存在的问题,本专利技术提供一种数据血缘关系查询方法及系统。
[0006]本专利技术提供一种数据血缘关系查询方法,包括:
[0007]基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,其中,所述目标关系数据库是通过解析历史查询语句信息得到的数据血缘关系构建得到的;
[0008]根据所述关系节点信息,生成所述待查询表的父子树形结构语法树;
[0009]根据所述父子树形结构语法树,获取所述待查询表的数据血缘关系结果。
[0010]根据本专利技术提供的一种数据血缘关系查询方法,所述目标关系数据库通过以下步骤构建得到:
[0011]获取历史查询语句信息,所述历史查询语句信息为结构化查询语言语句;
[0012]对所述历史查询语句信息进行解析,获取所述历史查询语句信息中各个表之间的数据血缘关系;
[0013]根据所述数据血缘关系,构建目标关系数据库。
[0014]根据本专利技术提供的一种数据血缘关系查询方法,所述对所述历史查询语句信息进行解析,获取所述历史查询语句信息中各个表之间的数据血缘关系,包括:
[0015]基于Antrl语法分析器,对所述历史查询语句信息进行解析,获取所述历史查询语句信息对应的源表、目标表,以及所述源表与所述目标表之间的数据血缘关系;
[0016]所述根据所述数据血缘关系,构建目标关系数据库,包括:
[0017]根据所述源表、所述目标表和所述数据血缘关系,生成父子树形结构语法树;
[0018]基于所述父子树形结构语法树和预设关系数据库,构建所述目标关系数据库。
[0019]根据本专利技术提供的一种数据血缘关系查询方法,在所述根据所述数据血缘关系,
构建目标关系数据库之后,所述方法还包括:
[0020]基于预设数据库更新频率,判断所述目标关系数据库中是否存在表结构变更的源表,若存在,则对所述目标关系数据库中对应的父子树形结构语法树进行更新,得到更新后的关系数据库。
[0021]根据本专利技术提供的一种数据血缘关系查询方法,所述基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,包括:
[0022]通过所述表信息,获取所述待查询表的表名称信息;
[0023]根据所述表名称信息,生成第一结构化查询语言语句和第二结构化查询语言语句,其中,所述第一结构化查询语言语句用于查询所述待查询表的父节点信息,所述第二结构化查询语言语句用于查询所述待查询表的子节点信息;
[0024]根据所述第一结构化查询语言语句和所述第二结构化查询语言语句,从所述目标关系数据库中分别获取所述待查询表对应父节点信息和子节点信息;
[0025]根据所述父节点信息和所述子节点信息,得到所述待查询表的关系节点信息。
[0026]根据本专利技术提供的一种数据血缘关系查询方法,所述根据所述父子树形结构语法树,获取所述待查询表的数据血缘关系结果,包括:
[0027]根据所述父子树形结构语法树,以可视化展示界面显示所述数据血缘关系结果。
[0028]本专利技术还提供一种数据血缘关系查询系统,包括:
[0029]表关系获取模块,用于基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,其中,所述目标关系数据库是通过解析历史查询语句信息得到的数据血缘关系构建得到的;
[0030]语法树生成模块,用于根据所述关系节点信息,生成所述待查询表的父子树形结构语法树;
[0031]数据血缘关系生成模块,用于根据所述父子树形结构语法树,获取所述待查询表的数据血缘关系结果
[0032]本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述数据血缘关系查询方法。
[0033]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述数据血缘关系查询方法。
[0034]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述数据血缘关系查询方法。
[0035]本专利技术提供的一种数据血缘关系查询方法及系统,通过对历史查询语句信息解析,将解析得到的各个表之间的数据血缘关系,以父子树形式存储在关系数据库中,避免了现有依靠人工进行数据血缘关系的查询过程,提供了数据查询效率。
附图说明
[0036]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图进行简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些
附图获得其他的附图。
[0037]图1为本专利技术提供的数据血缘关系查询方法的流程示意图;
[0038]图2为本专利技术提供的数据血缘关系查询系统的结构示意图;
[0039]图3为本专利技术提供的电子设备的结构示意图。
具体实施方式
[0040]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0041]在现有的数据血缘关系查询场景中,当某产品系统发出提示,该产品系统某张源表(记为表A)将于某批次取消下发,请使用该产品系统表A的下游系统注意。此时,下游系统的工作人员,需要通过查询结构化查询语言(Structured Query Language,简称SQL)文件,查询下游系统中直接使用表A的目标表(记为表B);进一步地,工作人员还需要通过查询SQL文件,获取使用表B的目标表(记为表C),直到工作人员查询所有相关的SQL加工文件后,确定表A相关的数据血缘关系。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据血缘关系查询方法,其特征在于,包括:基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,其中,所述目标关系数据库是通过解析历史查询语句信息得到的数据血缘关系构建得到的;根据所述关系节点信息,生成所述待查询表的父子树形结构语法树;根据所述父子树形结构语法树,获取所述待查询表的数据血缘关系结果。2.根据权利要求1所述的数据血缘关系查询方法,其特征在于,所述目标关系数据库通过以下步骤构建得到:获取历史查询语句信息,所述历史查询语句信息为结构化查询语言语句;对所述历史查询语句信息进行解析,获取所述历史查询语句信息中各个表之间的数据血缘关系;根据所述数据血缘关系,构建目标关系数据库。3.根据权利要求2所述的数据血缘关系查询方法,其特征在于,所述对所述历史查询语句信息进行解析,获取所述历史查询语句信息中各个表之间的数据血缘关系,包括:基于Antrl语法分析器,对所述历史查询语句信息进行解析,获取所述历史查询语句信息对应的源表、目标表,以及所述源表与所述目标表之间的数据血缘关系;所述根据所述数据血缘关系,构建目标关系数据库,包括:根据所述源表、所述目标表和所述数据血缘关系,生成父子树形结构语法树;基于所述父子树形结构语法树和预设关系数据库,构建所述目标关系数据库。4.根据权利要求3所述的数据血缘关系查询方法,其特征在于,在所述根据所述数据血缘关系,构建目标关系数据库之后,所述方法还包括:基于预设数据库更新频率,判断所述目标关系数据库中是否存在表结构变更的源表,若存在,则对所述目标关系数据库中对应的父子树形结构语法树进行更新,得到更新后的关系数据库。5.根据权利要求1所述的数据血缘关系查询方法,其特征在于,所述基于待查询表的表信息,从目标关系数据库中获取所述待查询表对应的关系节点信息,包括:通过...

【专利技术属性】
技术研发人员:张奇蒋诗伟何心涛顾玉莲曹梦思吴锡臻
申请(专利权)人:中银金融科技有限公司
类型:发明
国别省市:

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

1