基于数据血缘分析的数据追踪方法、系统及存储介质技术方案

技术编号:28498396 阅读:25 留言:0更新日期:2021-05-19 22:36
本发明专利技术涉及基于数据血缘分析的数据追踪方法,包括以下:根据数据开发任务的类型进行血缘关系表的构建,所述数据开发任务的类型具体通过是否为SQL类的数据进行划分;获取用户的查询请求;根据用户的查询请求,将血缘关系表中的关联数据予以展示。本发明专利技术能够对SQL类以及其他类的数据进行血缘关系的建立,是实现数据融合(聚合)的一个手段,并且通过血缘分析能够实现数据融合处理的可追溯。能够满足企事业单位的数据治理需求。业单位的数据治理需求。业单位的数据治理需求。

【技术实现步骤摘要】
基于数据血缘分析的数据追踪方法、系统及存储介质


[0001]本专利技术涉及数据治理领域,尤其涉及基于数据血缘分析的数据追踪方法、系统及存储介质。

技术介绍

[0002]在人类社会中,血缘关系是指由婚姻或生育而产生的人际关系,是最早形成的一种社会关系。今天,人类进入了大数据时代。每天,世界上都有海量的,各种类型的,关系复杂的数据在快速产生。这些庞大复杂的数据汇聚又产生新的数据。数据在产生、融合、流转,消亡过程中形成一种逻辑关系。我们借鉴人类社会中的血缘关系来表达数据之间的这种关系,称之为数据的血缘关系。
[0003]数据治理里经常提到的一个词就是血缘分析,血缘分析是保证数据融合(聚合)的一个手段,通过血缘分析能够实现数据融合处理的可追溯。当今缺少一种较为系统有效的数据血缘分析方法,无法满足企事业单位的数据治理需求。

技术实现思路

[0004]本专利技术的目的是为了至少解决现有技术的不足之一,提供基于数据血缘分析的数据追踪方法、系统及存储介质。
[0005]为了实现上述目的,本专利技术采用以下的技术方案:具体的,提出基于数据血缘分析的数据追踪方法,包括以下:根据数据开发任务的类型进行血缘关系表的构建,所述数据开发任务的类型具体通过是否为SQL类的数据进行划分;获取用户的查询请求;根据用户的查询请求,将血缘关系表中的关联数据予以展示。
[0006]进一步,所述根据数据开发任务的类型进行血缘关系表的构建具体包括以下,当判断为非SQL类的数据开发任务时,扫描运行环境中的同步任务配置信息,根据所述同步任务配置信息中的任务的输入以及输出确定当前任务中相关数据表的血缘关系,并将血缘关系写入血缘关系数据表中以更新血缘关系数据表;当判断为SQL类的数据开发任务时,将当前任务执行的命令打包写入消息队列,从消息队列中获取数据,利用SQL的AST语法确定当前任务中的相关数据表的读、写属性并进行标记,通过SQL中的数据源信息确定是否已经存在有关相关数据表已建立的存储对象,如果已经存在,则根据SQL语法中的单语句读写关系,确定数据血缘流向,如果不存在,则为相关数据表建立对应的存储对象,再根据SQL语法中的单语句读写关系,确定数据血缘流向,最终根据确定的血缘数据流向更新血缘关系数据表;最终根据以上两种数据开发任务的类型所更新的血缘关系数据表,完成血缘关系表的构件。
[0007]进一步,上述根据用户的查询请求,将血缘关系表中的关联数据予以展示具体包
括以下,根据用户的查询请求,获取血缘关系表中的关联数据,并对所述关联数据进行数据清洗得到清洗后的数据;对清洗后的数据进行词法分析,生成抽象语法树,遍历抽象语法树对数据中的语句进行句法解析;对句法解析后的抽象语法树,根据血缘关系分析结果绘制基于语句的数据血缘关系图,最终进行可视化展示。
[0008]进一步,上述数据清洗过程具体包括,获取含有SQL代码的脚本文件,并寻找SQL代码的标志位,利用标志位过滤脚本文件中的无关内容,保留得到规则化的SQL代码语句;上述词法分析过程具体包括,对规则化的SQL语句进行词法分析,根据语法规则对规则化的 SQL语句进行关键词划分,并对每个关键词进行标签标识,并将每个标识后的SQL语句作为一个节点,生成为一棵抽象语法树,遍历抽象语法树,为每个标签对应的SQL语句赋予句法意义,实现对SQL语句的句法解析;上述遍历抽象语法树对数据中的语句进行句法解析具体包括,处理抽象语法树中标识出的节点数据,将源数据表和源数据字段作为节点数据的输入集合,将目标数据表和目标数据字段作为节点数据的输出集合,对节点数据的来源和去向分别进行映射,得到血缘关系分析结果;上述可视化展示具体包括,绘制数据血缘关系图中数据表和字段节点,并根据血缘关系分析结果,关联数据血缘关系图中的节点并绘制箭头指向连线,将绘制好的数据血缘关系图发送至用户终端进行可视化显示。
[0009]本专利技术还提出基于数据血缘分析的数据追踪系统,包括,血缘关系表构建模块,用于根据数据开发任务的类型进行血缘关系表的构建,所述数据开发任务的类型具体通过是否为SQL类的数据进行划分;查询请求获取模块,用于获取用户的查询请求;根据用户的查询请求,将血缘关系表中的关联数据予以展示。
[0010]进一步,所述血缘关系表构建模块具体包括非SQL类的数据开发任务处理子单元以及SQL类的数据开发任务处理子单元,所述非SQL类的数据开发任务处理子单元,用于当判断为非SQL类的数据开发任务时,扫描运行环境中的同步任务配置信息,根据所述同步任务配置信息中的任务的输入以及输出确定当前任务中相关数据表的血缘关系,并将血缘关系写入血缘关系数据表中以更新血缘关系数据表;所述SQL类的数据开发任务处理子单元,用于当判断为SQL类的数据开发任务时,将当前任务执行的命令打包写入消息队列,从消息队列中获取数据,利用SQL的AST语法确定当前任务中的相关数据表的读、写属性并进行标记,通过SQL中的数据源信息确定是否已经存在有关相关数据表已建立的存储对象,如果已经存在,则根据SQL语法中的单语句读写关系,确定数据血缘流向,如果不存在,则为相关数据表建立对应的存储对象,再根据SQL语法中的单语句读写关系,确定数据血缘流向,最终根据确定的血缘数据流向更新血缘关系数据表。
[0011]本专利技术还提出一种计算机可读存储的介质,所述计算机可读存储的介质存储有计
算机程序,所述计算机程序被处理器执行时实现如权利要求1

4中任一项所述方法的步骤。
[0012]本专利技术的有益效果为:本专利技术提出基于数据血缘分析的数据追踪方法,通过根据是否为SQL类的数据开发任务进行血缘关系表的构建,最终根据血缘关系表按照用户的查询请求;将血缘关系表中的关联数据展示给用户,整个方案系统有效,能够满足企事业单位的数据治理需求。
附图说明
[0013]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0014]图1所示为本专利技术基于数据血缘分析的数据追踪方法流程图;图2所示为本专利技术基于数据血缘分析的数据追踪方法的血缘关系表的建立流程图。
具体实施方式
[0015]以下将结合实施例和附图对本专利技术的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本专利技术的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。附图中各处使用的相同的附图标记指示相同或相似的部分。
[0016]参照图1以及图2,实施例1,本专利技术提出基于数据血缘分析的数据追踪方法,包括以下:根据数据开发任务的类型进行血缘关系表的构建,所述数据开发任务的类型具体通过是否为SQL类的数据进行划分;获取用户的查询请求;根据用户的查询请求,将血缘关系表中的关联数据予以展示。
[0017]作为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于数据血缘分析的数据追踪方法,其特征在于,包括以下:根据数据开发任务的类型进行血缘关系表的构建,所述数据开发任务的类型具体通过是否为SQL类的数据进行划分;获取用户的查询请求;根据用户的查询请求,将血缘关系表中的关联数据予以展示。2.根据权利要求1所述的基于数据血缘分析的数据追踪方法,其特征在于,所述根据数据开发任务的类型进行血缘关系表的构建具体包括以下,当判断为非SQL类的数据开发任务时,扫描运行环境中的同步任务配置信息,根据所述同步任务配置信息中的任务的输入以及输出确定当前任务中相关数据表的血缘关系,并将血缘关系写入血缘关系数据表中以更新血缘关系数据表;当判断为SQL类的数据开发任务时,将当前任务执行的命令打包写入消息队列,从消息队列中获取数据,利用SQL的AST语法确定当前任务中的相关数据表的读、写属性并进行标记,通过SQL中的数据源信息确定是否已经存在有关相关数据表已建立的存储对象,如果已经存在,则根据SQL语法中的单语句读写关系,确定数据血缘流向,如果不存在,则为相关数据表建立对应的存储对象,再根据SQL语法中的单语句读写关系,确定数据血缘流向,最终根据确定的血缘数据流向更新血缘关系数据表;最终根据以上两种数据开发任务的类型所更新的血缘关系数据表,完成血缘关系表的构件。3.根据权利要求2所述的基于数据血缘分析的数据追踪方法,其特征在于,上述根据用户的查询请求,将血缘关系表中的关联数据予以展示具体包括以下,根据用户的查询请求,获取血缘关系表中的关联数据,并对所述关联数据进行数据清洗得到清洗后的数据;对清洗后的数据进行词法分析,生成抽象语法树,遍历抽象语法树对数据中的语句进行句法解析;对句法解析后的抽象语法树,根据血缘关系分析结果绘制基于语句的数据血缘关系图,最终进行可视化展示。4.根据权利要求3所述的基于数据血缘分析的数据追踪方法,其特征在于,上述数据清洗过程具体包括,获取含有SQL代码的脚本文件,并寻找SQL代码的标志位,利用标志位过滤脚本文件中的无关内容,保留得到规则化的SQL代码语句;上述词法分析过程具体包括,对规则化的SQL语句进行词法分析,根据语法规则对规则化的 SQL语句进行关键词划分,并对每个关键词进行标签标识,并将每个标识后的SQL语句作为一个节点,生成为一棵抽...

【专利技术属性】
技术研发人员:李保平杨建荣龙磊
申请(专利权)人:广州汇通国信科技有限公司
类型:发明
国别省市:

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

1