CN114385763A - 数据血缘分析方法、装置、系统及可读存储介质 - Google Patents

数据血缘分析方法、装置、系统及可读存储介质 Download PDF

Info

Publication number
CN114385763A
CN114385763A CN202011142524.6A CN202011142524A CN114385763A CN 114385763 A CN114385763 A CN 114385763A CN 202011142524 A CN202011142524 A CN 202011142524A CN 114385763 A CN114385763 A CN 114385763A
Authority
CN
China
Prior art keywords
data
blood
relationship
analysis
blood relationship
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011142524.6A
Other languages
English (en)
Inventor
李宏伟
常兴亮
佟胜智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Hongxiang Technical Service Co Ltd
Original Assignee
Beijing Hongxiang Technical Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Hongxiang Technical Service Co Ltd filed Critical Beijing Hongxiang Technical Service Co Ltd
Priority to CN202011142524.6A priority Critical patent/CN114385763A/zh
Publication of CN114385763A publication Critical patent/CN114385763A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

本发明公开了一种数据血缘分析方法、装置、系统及可读存储介质,所述方法包括:对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。本发明通过将各数据之间的各种关联关系汇总为表征来源去向的血缘关系,在具有对数据表或字段的来源去向进行确定的需求时,直接通过血缘关系即可查询,提高了查询效率,并且有利于全面查询,提高了查询的准确性。

Description

数据血缘分析方法、装置、系统及可读存储介质
技术领域
本发明涉及大数据技术领域,尤其涉及一种数据血缘分析方法、装置、系统及可读存储介质。
背景技术
随着大数据技术的发展,数据库为越来越多的行业、领域所应用。数据库中包含大量的数据表,各数据表有包含有大量字段。不同数据表之间具有不同的关联关系,如输入表和输出表的来源去向关系;不同字段之间也具有不同的关联关系,如输入字段和输出字段的来源去向关系。
当前若具有对数据库中各数据表的来源去向关系,或者对各字段的来源去向进行确定的需求,往往通过数据表名对各数据表或者通过字段名对各字段逐一查询确定。查询的效率低,并且不全面。
因此,如何全面快速的确定数据库中各数据表以及各字段的来源去向,是当前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种数据血缘分析方法、装置、系统及可读存储介质,旨在解决现有技术中如何全面快速的确定数据库中各数据表以及各字段的来源去向的技术问题。
为实现上述目的,本发明提供一种数据血缘分析方法,所述数据血缘分析方法包括以下步骤:
对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
可选地,所述对所述待分析语句进行标准化处理,生成标准语句的步骤包括:
查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
可选地,所述对所述血缘关系进行可视化展示的步骤之后包括:
当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当所述数据源的各数据中存在运行异常数据时,根据所述血缘关系,查找与所述运行异常数据关联的字段以及数据表;
根据所述字段和所述数据表,生成异常参考原因和预警信息,并基于所述异常参考原因和所述预警信息输出第一提示信息。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当所述数据源的各数据中存在异常波动数据时,根据所述血缘关系,对所述异常波动数据进行溯源分析,确定波动原因;
将所述波动原因生成为第二提示信息,并输出所述第二提示信息。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
根据所述血缘关系,对所述数据源中的各数据进行冗余性校验和无效性校验,获得待删除数据;
将所述待删除数据生成为第三提示信息,并输出所述第三提示信息。
可选地,所述将所述待删除数据生成为第三提示信息,并输出所述第三提示信息的步骤之后包括:
若接收到基于所述第三提示信息输入的删除请求,则获取所述删除请求对应的请求数据;
判断所述请求数据是否与所述待删除数据匹配,若与所述待删除数据匹配,则删除所述请求数据。
所述删除所述请求数据的步骤之前包括:
判断与所述删除请求对应的用户账号是否具有对所述请求数据进行删除的权限;
若具有对所述请求数据进行删除的权限,则输出确认删除提示信息;
在接收到基于所述确认删除提示信息所发送的确认指令后,将所述请求数据删除到缓存数据库。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
根据所述血缘关系,对所述数据源中的各数据进行重要性等级评估,确定重要性等级高于预设重要等级的目标数据;
确定所述目标数据的数据类型,并提高所述数据类型的采集比重,以及提高所述目标数据的存储权重。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当接收到对所述血缘关系的权限申请时,确定所述权限申请在所述血缘关系中对应的数据范围,并对在所述数据范围内的数据进行标识。
可选地,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当接收到对所述血缘关系的设置指令时,获取与所述设置指令对应的设置信息;
根据所述设置信息,查找所述血缘关系中的待设置数据表和/或待设置字段,并根据所述设置信息,对所述待设置数据表和/或待设置字段进行设置。
可选地,所述血缘关系至少包括数据源中数据表之间的关联关系,数据表中字段之间的关联关系,以及字段与数据表之间的归属关系。
可选地,所述待分析语句为SQL语句。
进一步地,为实现上述目的,本发明还提供一种数据血缘分析装置,所述数据血缘分析装置包括:
抽取模块,用于对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
分析模块,用于对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
可选地,所述抽取模块还包括:
查找单元,用于查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
检测单元,用于对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
可选地,所述数据血缘分析装置还包括:
展示模块,用于将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
可选地,所述数据血缘分析装置还包括:
确定模块,用于当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
获取模块,用于根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
进一步地,为实现上述目的,本发明还提供一种数据血缘分析系统,所述数据血缘分析系统包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的数据血缘分析程序,所述数据血缘分析程序被所述处理器执行时实现如上述所述的数据血缘分析方法的步骤。
进一步地,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有数据血缘分析程序,所述数据血缘分析程序被处理器执行时实现如上所述的数据血缘分析方法的步骤。
本发明的数据血缘分析方法、装置、系统和可读存储介质,对数据源进行数据抽取,得到待分析语句,并且对该待分析语句进行标准化处理,生成标准语句;此后,对标准语句进行词法解析和语法解析,生成抽向语法树,并对抽向语法树遍历分析,得到数据源中各数据之间的血缘关系。该血缘关系至少包含数据库中数据与数据之间的关联关系,不同数据各自所对应数据包之间的关联关系,不同数据各自所对应字段之间的关联关系,字段与数据表之间的关联关系等。将各种关联关系汇总为表征来源去向的血缘关系。在具有对数据表或字段的来源去向进行确定的需求时,直接通过血缘关系即可查询,提高了查询效率,并且有利于全面查询,提高了查询的准确性。
附图说明
图1为本发明数据血缘分析系统实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明数据血缘分析方法第一实施例的流程示意图;
图3为本发明数据血缘分析装置较佳实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明提供一种数据血缘分析系统,参照图1,图1为本发明数据血缘分析系统实施例方案涉及的硬件运行环境的结构示意图。
如图1所示,该数据血缘分析系统可以包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储数据血缘分析系统。
本领域技术人员可以理解,图1中示出的数据血缘分析系统的硬件结构并不构成对数据血缘分析系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据血缘分析程序。其中,操作系统是管理和控制数据血缘分析系统的硬件与软件资源的程序,支持网络通信模块、用户接口模块、数据血缘分析程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1004;用户接口模块用于管理和控制用户接口1003。
在图1所示的数据血缘分析系统硬件结构中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
进一步地,所述对所述待分析语句进行标准化处理,生成标准语句的步骤包括:
查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
进一步地,所述对所述血缘关系进行可视化展示的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
当所述数据源的各数据中存在运行异常数据时,根据所述血缘关系,查找与所述运行异常数据关联的字段以及数据表;
根据所述字段和所述数据表,生成异常参考原因和预警信息,并基于所述异常参考原因和所述预警信息输出第一提示信息。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
当所述数据源的各数据中存在异常波动数据时,根据所述血缘关系,对所述异常波动数据进行溯源分析,确定波动原因;
将所述波动原因生成为第二提示信息,并输出所述第二提示信息。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
根据所述血缘关系,对所述数据源中的各数据进行冗余性校验和无效性校验,获得待删除数据;
将所述待删除数据生成为第三提示信息,并输出所述第三提示信息。
进一步地,所述将所述待删除数据生成为第三提示信息,并输出所述第三提示信息的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
若接收到基于所述第三提示信息输入的删除请求,则获取所述删除请求对应的请求数据;
判断所述请求数据是否与所述待删除数据匹配,若与所述待删除数据匹配,则删除所述请求数据。
进一步地,所述删除所述请求数据的步骤之前,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
判断与所述删除请求对应的用户账号是否具有对所述请求数据进行删除的权限;
若具有对所述请求数据进行删除的权限,则输出确认删除提示信息;
在接收到基于所述确认删除提示信息所发送的确认指令后,将所述请求数据删除到缓存数据库。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
根据所述血缘关系,对所述数据源中的各数据进行重要性等级评估,确定重要性等级高于预设重要等级的目标数据;
确定所述目标数据的数据类型,并提高所述数据类型的采集比重,以及提高所述目标数据的存储权重。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
当接收到对所述血缘关系的权限申请时,确定所述权限申请在所述血缘关系中对应的数据范围,并对在所述数据范围内的数据进行标识。
进一步地,所述获得所述数据源中各数据之间的血缘关系的步骤之后,处理器1001可以调用存储器1005中存储的数据血缘分析程序,并执行以下操作:
当接收到对所述血缘关系的设置指令时,获取与所述设置指令对应的设置信息;
根据所述设置信息,查找所述血缘关系中的待设置数据表和/或待设置字段,并根据所述设置信息,对所述待设置数据表和/或待设置字段进行设置。
进一步地,所述血缘关系至少包括数据源中数据表之间的关联关系,数据表中字段之间的关联关系,以及字段与数据表之间的归属关系。
进一步地,所述待分析语句为SQL语句。
本发明数据血缘分析系统的具体实施方式与下述数据血缘分析方法各实施例基本相同,在此不再赘述。
本发明还提供一种数据血缘分析方法。
参照图2,图2为本发明数据血缘分析方法第一实施例的流程示意图。
本发明实施例提供了数据血缘分析方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。具体地,本实施例数据血缘分析方法包括:
步骤S10,对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
本实施例中数据血缘分析方法应用于服务器,适用于通过服务器对数据库中数据之间的血缘关系进行分析。具体地,对数据源进行数据抽取操作,获得待分析语句。其中,数据源可以是各个应用系统的数据库,如调度系统、分析系统等,也可以是日志文件,如SQL日志、作业日志等。并且,待分析语句优选为SQL语句。对该类待分析语句进行标准化处理,得到标准语句,标准化处理为依据查询条件进行变量替换的过程。具体地,对待分析语句进行标准化处理,生成标准语句的步骤包括:
步骤S11,查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
步骤S12,对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
进一步地,待分析语句中针对不同的查询条件,预先设置有不同的预设变量;如依据日期条件查询,则设定的变量可以为$today$。并且针对查询条件设置信息作为设定信息,服务器在接收到该类经设置的设定信息后,将该类设定信息存储到预设存储单元中,并通过从存储单元中调用出设定信息对预设变量进行替换。如对于日期的查询条件,所设定的信息为当前日期,则用当前日期替换预设变量;若对于用户的查询条件,所设定的信息为用户账号,则用用户账号替换预设变量。
更进一步地,为了确保进行替换操作后,语句的准确性,对替换预设变量后的待分析语句进行语法检查。检查其中是否存在语法形式错误、语法逻辑错误等语法错误。若存在语法错误,则判定语法检查不通过,将语法错误生成为提示信息输出;若不存在语法错误,则判定语法检查通过,对待分析语句的标准化处理完成,替换后的待分析语句形成为标准语句。
步骤S20,对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
进一步地,对获得的标准语句进行词法解析和语法解析,生成抽向语法树。先对词法规则和语法规则进行定义,进而通过Antlr对标准语句进行词法解析和语法解析,生成抽向语法树(即AST语法树)。此后,对抽向语法树遍历分析,得到数据源中各数据之间的血缘关系,通过各数据之间血缘关系确定各数据的来源和去向。并且,对抽向语法树的遍历为对AST Node深度优先遍历,遇到操作的token则判断当前的操作,遇到子句则压栈当前处理,处理子句。子句处理完,栈弹出。处理子句的过程中,遇到子查询就保存当前子查询的信息,判断与其父查询的关系,最终形成树形结构;遇到字段或者条件处理则记录当前的字段和条件信息、组成Block,嵌套调用。以此,实现遍历分析,得到数据源中各数据的血缘关系。
更进一步地,数据源中的数据可以为数据表包含的数据,也可以是字段对应的数据。对于此,数据源中各数据之间的血缘关系至少包含数据源中数据表之间的关联关系,数据表中字段之间的关联关系,以及字段与数据表之间的归属关系。并且,数据表之间的关联关系为输入表和输出表之间的关系,数据表中字段之间的关联关系为输入字段与输出字段之间的关系,字段与数据表之间的归属关系为字段归属于数据,以及不归属于数据的关系。通过该类血缘关系,确定数据的来源和走向,一旦出现异常则可依据来源预测原因,并可依据走向预测异常的影响,实现归因溯源和影响力分析。具体地,获得数据源中各数据之间的血缘关系的步骤之后包括:
步骤a1,当所述数据源的各数据中存在运行异常数据时,根据所述血缘关系,查找与所述运行异常数据关联的字段以及数据表;
步骤a2,根据所述字段和所述数据表,生成异常参考原因和预警信息,并基于所述异常参考原因和所述预警信息输出第一提示信息。
更进一步地,当数据源中的各项数据中存在运行异常数据时,则通过血缘关系中体现的字段之间、数据表之间以及数据表与字段之间的关联性,查找与运行异常数据关联的字段以及数据表。其中,运行异常数据为在运行过程中存在异常的数据表或字段,与其关联的字段和数据表则可以是作为运行异常数据所来源的输入表或输入字段,或者作为运行异常数据所去向的输出表或输出字段,或者运行数据所归属的数据表。
可理解地,因运行异常数据为运行存在问题的数据,其存在的问题可能是输入数据所带入,也可能对后续输出数据产生影响,即对管理的字段和鼠标产生影响。故而根据关联的字段和数据表,生成异常参考原因和预警信息。通过异常参考原因体现出现异常的原因,并由预警信息体现异常对后续数据所产生的影响。并且,将异常参考原因和预警信息生成为第一提示信息输出,以提醒按照异常参考原因对运行异常数据及时处理,避免对预警信息所体现的数据产生影响。
进一步地,数据源中各数据的数据量相对稳定,若某一数据的数据量出现过多或过少的波动状态,则说明该数据为异常波动,可依据各数据的血缘关系进行分析。具体地,获得数据源中各数据之间的血缘关系的步骤之后包括:
步骤b1,当所述数据源的各数据中存在异常波动数据时,根据所述血缘关系,对所述异常波动数据进行溯源分析,确定波动原因;
步骤b2,将所述波动原因生成为第二提示信息,并输出所述第二提示信息。
更进一步地,若经确定数据源的各数据中存在数据量过多或过少的异常波动数据,则根据血缘关系中体现的字段之间、数据表之间以及数据表与字段之间的关联性,查找与异常波动数据关联的字段以及数据表,对异常波动数据进行溯源分析,确定引起波动的波动原因。因数据量的异常波动通常由所来源的数据引起,故所查找的与异常波动数据关联的字段和数据表优选为异常波动数据的输入表或输入字段,通过输入表或输入字段进行溯源分析,确定波动原因。
进一步地,将波动原因生成为第二提示信息,并输出该第二提示信息,以提醒按照波动原因对引起数据量的异常波动及时处理,确保数据源中各数据的有效性和准确性。其中,第二提示信息可以是包含波动原因的文字信息。也可以是包含波动原因的语音信息,对此不作限制。
可理解地,各数据之间的血缘关系除了反映数据之间的关联关系之外,还可通过每一数据所关联的数据数量,确定各数据中的重要程度高的数据。具体地,获得数据源中各数据之间的血缘关系的步骤之后包括:
步骤c1,根据所述血缘关系,对所述数据源中的各数据进行重要性等级评估,确定重要性等级高于预设重要等级的目标数据;
步骤c2,确定所述目标数据的数据类型,并提高所述数据类型的采集比重,以及提高所述目标数据的存储权重。
进一步地,根据血缘关系所体现的各数据之间的关系关系,统计每一数据所关联的其他数据的数量,通过各数据所关联其他数据的数量,对各数据进行重要性等级评估。其中,所关联其他数据的数量越多,则说明该数据的与其他数据的相关性越高,即重要程度越高。为了表征重要程度的高低,预先设置有预设数量阈值,以及该预设数量阈值所表征的预设重要等级;如设定预设数量阈值10,表征的预设重要等级为高级;即若某一数据所关联的数据数量为10个,则该数据的重要程度为高级。在统计得到各数据所关联其他数据的数量之后,将各数据所关联其他数据的数量分别和该预设数量阈值进行对比,确定其中大于预设数量阈值的数据。该类数据所对应的重要性等级高于预设重要等级,将其确定为目标数据。
更进一步地,对目标数据所归属的数据类型进行确定,并提高该类数据类型的采集比值,以增加该类型数据的采集量,便于广泛使用。同时,提高目标数据的存储权重,使得目标数据的存储时长高于其他数据,以及目标数据的存储隐秘性优于其他数据,以便于后续的使用且避免泄密,确保安全性。
需要说明的是,血缘关系除了可用于重要性等级评估之外,还可用于集中度评估,热度评估等。通过集中度评估来确定数据源中各数据的集中程度,并通过热度评估来反映数据缘中各数据的搜索次数。以此,通过血缘关系,对数据源中的各项数据进行多维度分析,实现从各个维度来体现数据源中各数据的数据价值。
可理解地,为了确保数据源中各数据的安全性,对于不同数据通常设定有不同的操作权限。对于具有血缘关系的各项数据,同样设置不同的操作权限。并且,对于血缘关系中各项数据的操作权限,可通过申请获得。具体地,获得数据源中各数据之间的血缘关系的步骤之后包括:
步骤d,当接收到对所述血缘关系的权限申请时,确定所述权限申请在所述血缘关系中对应的数据范围,并对在所述数据范围内的数据进行标识。
进一步地,当服务器接收到对血缘关系的权限申请时,对权限申请所携带的范围信息进行获取,该范围信息表征血缘关系中申请操作权限的数据范围。如血缘关系包含数据a1、a2、a3、a4、a5、a6,则范围信息可以为a3、a4、a5。为了确保范围信息所表征的数据在血缘关系所具有的数据范围内,先将范围信息所表征的数据和血缘关系所具有的数据范围对比,确定数据是否在数据范围内,若在数据范围内,则说明权限申请在数据维度上有效。进而对权限申请是否携带有审批信息进行判断,若携带有审批信息,则说明权限申请在审批维度上有效。
更进一步地,在判定权限申请在数据维度上和审批维度上均有效后,则对权限申请在血缘关系中对应的数据范围进行确定,即确定权限申请对血缘关系中的哪些数据申请操作权限。进而对数据范围内的数据进行标识,以赋予对该数据范围内数据的操作权限。并且,对于不同类型的操作权限,所设定的标识不一致,用以赋予不同类型的操作权限。同时,在对数据源中某一数据进行更新或调整时,通过其携带的标识,确定具有该标识的其他数据,体现更新或调整操作对各数据源中数据的影响范围。
进一步地,本实施例数据源中各数据的血缘关系支持设定,如对血缘关系中的某一数据新增关联的其他数据,或者删除其中关联的某一数据。具体地,获得数据源中各数据之间的血缘关系的步骤之后包括:
步骤e1,当接收到对所述血缘关系的设置指令时,获取与所述设置指令对应的设置信息;
步骤e2,根据所述设置信息,查找所述血缘关系中的待设置数据表和/或待设置字段,并根据所述设置信息,对所述待设置数据表和/或待设置字段进行设置。
更进一步地,当服务器接收到对血缘关系的设置指令,表征对获得的血缘关系具有设定需求时,获取设置指令中携带的设置信息,通过设置信息所表征的设置操作所针对的数据,以及设置的类型,对血缘关系进行设置。具体地,设置信息中携带有目标标识,通过目标标识表征设置操作所针对的数据,将该所针对的数据可以是血缘关系中的数据表,也可以是字段,或者通过针对数据表和字段进行设置。故将所针对的数据作为血缘关系中的待设置数据表和/或待设置字段。并且,对设置信息中携带的操作信息,对待设置数据表和/或待设置字段进行设置。其中,操作信息包括删除操作和添加操作,分别用于对待设置数据表和/或待设置字段进行删除操作和添加操作。
进一步地,对于删除操作,操作信息包含删除标识和待删除数据标识,以便于依据操作信息,查找待设置数据表和/或待设置字段中,与待删除数据标识对应的待删除数据,进而将待删除数据从血缘关系中删除。对于添加操作,操作信息包括添加标识和待添加数据标识,以便于依据操作信息,查找数据源中与待删除数据标识对应的待添加数据,进而将待添加数据添加到血缘关系中的待设置数据表和/或待设置字段。以此,实现根据设置信息,对待设置数据表和/或待设置字段进行设置。
本发明的数据血缘分析方法,对数据源进行数据抽取,得到待分析语句,并且对该待分析语句进行标准化处理,生成标准语句;此后,对标准语句进行词法解析和语法解析,生成抽向语法树,并对抽向语法树遍历分析,得到数据源中各数据之间的血缘关系。该血缘关系至少包含数据库中数据与数据之间的关联关系,不同数据各自所对应数据包之间的关联关系,不同数据各自所对应字段之间的关联关系,字段与数据表之间的关联关系等。将各种关联关系汇总为表征来源去向的血缘关系。在具有对数据表或字段的来源去向进行确定的需求时,直接通过血缘关系即可查询,提高了查询效率,并且有利于全面查询,提高了查询的准确性。
进一步地,基于本发明数据血缘分析方法的第一实施例,提出本发明数据血缘分析方法第二实施例。
所述数据血缘分析方法第二实施例与所述数据血缘分析方法第一实施例的区别在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
步骤f1,将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
本实施例支持对数据源中各数据之间的血缘关系进行可视化展示。具体地,预先设置有用于存储的预设数据库以及用于展示的预设图表模板,将获取的血缘关系存储到预设数据库中,并调用预设图表模板。进而将存储于预设数据库中的血缘关系添加到预设图表模板,以通过预设图表模板对血缘关系进行可视化展示。
进一步地,对于以预设图表模板展示的血缘关系支持查看。具体地,对血缘关系进行可视化展示的步骤之后包括:
步骤f2,当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
步骤f3,根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
更进一步地,当接收到通过可视化展示的血缘关系发送的查看指令时,根据查看指令中的查看信息,对血缘关系中与该查看指令对应的查看节点进行确定,即确定对血缘关系中进行查看的节点。其中,节点优选为形成血缘关系的各项数据。
进一步地,根据血缘关系,获取与查看节点对应的血缘清单,以及对应的血缘字段。其中,血缘清单为与查看节点具有输入输出关系的数据表清单,血缘字段为与查看节点具有关联关系的字段;并且关联关系可以是输入输出关系,也可以是归属关系。
本实施例通过将血缘关系可视化,便于对血缘关系中各数据的关联关系的查看。通过点击操作即可发起查看指令,进而将点击操作所针对节点关联的各项数据显示,以详细展示每一数据所关联的其他数据,便于对各项数据的详细关联关系的查看。
进一步地,基于本发明数据血缘分析方法的第一或第二实施例,提出本发明数据血缘分析方法第三实施例。
所述数据血缘分析方法第三实施例与所述数据血缘分析方法第一或第二实施例的区别在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
步骤g1,根据所述血缘关系,对所述数据源中的各数据进行冗余性校验和无效性校验,获得待删除数据;
步骤g2,将所述待删除数据生成为第三提示信息,并输出所述第三提示信息。
本实施例数据源中所存在的无效数据和重复数据进行剔除。具体地,在形成血缘关系之后,根据血缘关系所体现的各数据之间的关联性,对数据源中的各数据进行冗余性校验和无效性校验,查看各数据中存在的重复数据和无效数据。其中,重复数据为数据内容一致,且关联关系一致的数据;无效数据为超过时效,或者不符合数据源所存储数据规则的数据。
进一步地,将经冗余性校验和无效性校验所得到的数据,作为需要删除的待删除数据。并且将待删除数据生成为第三提示信息输出,以提示对该类待删除数据进行删除,在释放存储空间的同时优化存储结构。
更进一步地,所述将所述待删除数据生成为第三提示信息,并输出所述第三提示信息的步骤之后包括:
步骤g3,若接收到基于所述第三提示信息输入的删除请求,则获取所述删除请求对应的请求数据;
步骤g4,判断所述请求数据是否与所述待删除数据匹配,若与所述待删除数据匹配,则删除所述请求数据。
进一步地,在输出第三提示信息后,若接收到依据第三提示信息输入的删除请求,表征具有对待删除数据进行删除的需求时,对删除请求对应的请求数据进行获取,该请求数据为通过删除请求所请求删除的数据。进而将请求数据和待删除数据对比,通过确定请求数据是否在待删除数据范围内,来判断请求数据是否与待删除数据匹配。若经对比确定请求数据在待删除数据范围内,则判定请求数据与待删除数据匹配,请求数据为支持删除的数据,故对请求数据进行删除。反之若经对比确定请求数据超出待删除数据范围,则判定请求数据不与待删除数据匹配,请求数据中包含有不支持删除的数据,故而对删除请求返回删除失败的提示信息。
更进一步地,为了确保数据的安全性,避免恶意删除或误删除,本实施例对数据的删除操作依据删除权限实现。具体地,删除请求数据的步骤之前包括:
步骤g41,判断与所述删除请求对应的用户账号是否具有对所述请求数据进行删除的权限;
步骤g42,若具有对所述请求数据进行删除的权限,则输出确认删除提示信息;
步骤g43,在接收到基于所述确认删除提示信息所发送的确认指令后,将所述请求数据删除到缓存数据库。
进一步地,在确定请求数据与待删除数据匹配,为支持删除的数据,而对请求数据进行删除之前,读取发起删除请求的用户账号所携带的权限标识,通过权限标识判断与删除请求对应的该类用户账号是否具有对请求数据进行删除的权限。若具有对请求数据进行删除权限,则输出确认删除提示信息,以供用户账号基于确认删除提示信息进行操作。若接收到基于该确认提示信息所发送的确认指令,则说明用户账号确定需要对请求数据进行删除操作,故而将请求数据删除到缓存数据库。若经判定用户账号不具有对请求数据进行删除的权限,则输出删除失败提示信息。或者用户账号基于确认删除提示信息进行操作,若接收到基于该确认提示信息所发送的取消指令,则说明用户账号不需要对请求数据进行删除操作,故而不对请求数据删除,并输出删除失败提示信息。
需要说明的是,本实施例除了将请求数据删除到缓存数据库之外,还可以将请求数据完全删除。但相对于完全删除,删除到缓存数据库支持恢复。具体地,当接收到对缓存数据库中经删除的某一项请求数据的恢复指令时,则对该项请求数据进行恢复操作,恢复到原始的数据源。此外,针对删除到缓存数据库中的请求数据设置有定时清理机制,设定清理周期;当请求数据删除到缓存数据库的时长达到该清理周期的时间长度时,则将请求数据从缓存数据库中删除,以释放缓存数据库的存储空间,便于对后续删除的请求数据进行缓存。
本实施通过冗余性校验和无效性校验,获得待删除数据进行删除,清除了数据源中的重复性数据和无效数据,使得所存储的数据更为准确有效,以释放存储空间,优化存储结构。同时对于需要删除的请求数据,在判断出具有删除权限并确定删除后,才删除到缓存数据库,以避免误删除或恶意删除,确保数据的安全性。
本发明还提供一种数据血缘分析装置。请参照图3,所述数据血缘分析装置包括:
抽取模块10,用于对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
分析模块20,用于对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
进一步地,所述抽取模块还包括:
查找单元,用于查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
检测单元,用于对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
进一步地,所述数据血缘分析装置还包括:
展示模块,用于将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
进一步地,所述数据血缘分析装置还包括:
确定模块,用于当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
获取模块,用于根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
本发明数据血缘分析装置具体实施方式与上述数据血缘分析方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种可读存储介质。
可读存储介质上存储有数据血缘分析程序,数据血缘分析程序被处理器执行时实现如上所述的数据血缘分析方法的步骤。
本发明可读存储介质可以为计算机可读存储介质,其具体实施方式与上述数据血缘分析方法各实施例基本相同,在此不再赘述。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。

Claims (10)

1.一种数据血缘分析方法,其特征在于,所述数据血缘分析方法包括以下步骤:
对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
2.如权利要求1所述的数据血缘分析方法,其特征在于,所述对所述待分析语句进行标准化处理,生成标准语句的步骤包括:
查找所述待分析语句中的预设变量,并调用设定信息对所述预设变量进行替换;
对替换所述预设变量后的待分析语句进行语法检查,并在所述语法检查通过后,完成所述待分析语句的标准化处理,获得标准语句。
3.如权利要求1所述的数据血缘分析方法,其特征在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
将所述血缘关系存储到预设数据库中,并调用预设图表模板,将存储于所述预设数据库中的所述血缘关系添加到所述预设图表模板,对所述血缘关系进行可视化展示。
4.如权利要求3所述的数据血缘分析方法,其特征在于,所述对所述血缘关系进行可视化展示的步骤之后包括:
当接收到基于可视化展示的所述血缘关系发送的查看指令时,确定所述血缘关系中与所述查看指令对应的查看节点;
根据所述血缘关系,获取与所述查看节点对应的血缘清单,以及对应的血缘字段,并展示所述血缘清单和所述血缘字段。
5.如权利要求1所述的数据血缘分析方法,其特征在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当所述数据源的各数据中存在运行异常数据时,根据所述血缘关系,查找与所述运行异常数据关联的字段以及数据表;
根据所述字段和所述数据表,生成异常参考原因和预警信息,并基于所述异常参考原因和所述预警信息输出第一提示信息。
6.如权利要求1所述的数据血缘分析方法,其特征在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
当所述数据源的各数据中存在异常波动数据时,根据所述血缘关系,对所述异常波动数据进行溯源分析,确定波动原因;
将所述波动原因生成为第二提示信息,并输出所述第二提示信息。
7.如权利要求1所述的数据血缘分析方法,其特征在于,所述获得所述数据源中各数据之间的血缘关系的步骤之后包括:
根据所述血缘关系,对所述数据源中的各数据进行冗余性校验和无效性校验,获得待删除数据;
将所述待删除数据生成为第三提示信息,并输出所述第三提示信息。
8.一种数据血缘分析装置,其特征在于,所述数据血缘分析装置包括:
抽取模块,用于对数据源进行数据抽取,获得待分析语句,并对所述待分析语句进行标准化处理,生成标准语句;
分析模块,用于对所述标准语句进行词法解析和语法解析,生成抽向语法树,并对所述抽向语法树遍历分析,获得所述数据源中各数据之间的血缘关系。
9.一种数据血缘分析系统,其特征在于,所述数据血缘分析系统包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的数据血缘分析程序,所述数据血缘分析程序被所述处理器执行时实现如权利要求1-7中任一项所述的数据血缘分析方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有数据血缘分析程序,所述数据血缘分析程序被处理器执行时实现如权利要求1-7中任一项所述的数据血缘分析方法的步骤。
CN202011142524.6A 2020-10-22 2020-10-22 数据血缘分析方法、装置、系统及可读存储介质 Pending CN114385763A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011142524.6A CN114385763A (zh) 2020-10-22 2020-10-22 数据血缘分析方法、装置、系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011142524.6A CN114385763A (zh) 2020-10-22 2020-10-22 数据血缘分析方法、装置、系统及可读存储介质

Publications (1)

Publication Number Publication Date
CN114385763A true CN114385763A (zh) 2022-04-22

Family

ID=81194786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011142524.6A Pending CN114385763A (zh) 2020-10-22 2020-10-22 数据血缘分析方法、装置、系统及可读存储介质

Country Status (1)

Country Link
CN (1) CN114385763A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114911785A (zh) * 2022-05-16 2022-08-16 北京航空航天大学 一种数据血缘管理方法、装置及电子设备
CN115203180A (zh) * 2022-05-16 2022-10-18 北京航空航天大学 一种数据血缘生成方法
CN116662373A (zh) * 2023-07-27 2023-08-29 天津神舟通用数据技术有限公司 一种数据访问控制方法、装置、设备及介质
CN117056109A (zh) * 2023-08-14 2023-11-14 上海南洋万邦软件技术有限公司 数据运维故障分析系统、方法
CN117312331A (zh) * 2023-12-01 2023-12-29 浪潮云信息技术股份公司 一种元数据血缘分析方法、装置、设备及存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114911785A (zh) * 2022-05-16 2022-08-16 北京航空航天大学 一种数据血缘管理方法、装置及电子设备
CN115203180A (zh) * 2022-05-16 2022-10-18 北京航空航天大学 一种数据血缘生成方法
CN116662373A (zh) * 2023-07-27 2023-08-29 天津神舟通用数据技术有限公司 一种数据访问控制方法、装置、设备及介质
CN117056109A (zh) * 2023-08-14 2023-11-14 上海南洋万邦软件技术有限公司 数据运维故障分析系统、方法
CN117312331A (zh) * 2023-12-01 2023-12-29 浪潮云信息技术股份公司 一种元数据血缘分析方法、装置、设备及存储介质
CN117312331B (zh) * 2023-12-01 2024-03-29 浪潮云信息技术股份公司 一种元数据血缘分析方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN114385763A (zh) 数据血缘分析方法、装置、系统及可读存储介质
US9342570B2 (en) Detecting reference data tables in extract-transform-load processes
JP5306360B2 (ja) データ記録を一致させるシステムの分析のための方法およびシステム
AU2009238294B2 (en) Data transformation based on a technical design document
US8316353B2 (en) Problem analysis via matching contiguous stack trace lines to symptom rules
US10089334B2 (en) Grouping of database objects
JP2013077246A (ja) 動的なウェブ・アプリケーションの問題を修正するメタデータの生成・管理の支援方法、装置、およびプログラム
CN107402957B (zh) 用户行为模式库的构建及用户行为异常检测方法、系统
EP3776314B1 (en) Staged dynamic taint flow inference
CN113661488A (zh) 用于访问主数据管理系统的数据记录的方法
KR101696694B1 (ko) 역추적을 이용한 소스 코드 취약점 분석 방법 및 장치
US9600644B2 (en) Method, a computer program and apparatus for analyzing symbols in a computer
CN115357590A (zh) 针对数据变更的记录方法、装置、电子设备及存储介质
CN108959454B (zh) 一种提示子句指定方法、装置、设备及存储介质
CN113010208B (zh) 一种版本信息的生成方法、装置、设备及存储介质
US9043371B1 (en) Storing information in a trusted environment for use in processing data triggers in an untrusted environment
CN110580170B (zh) 软件性能风险的识别方法及装置
CN110096296A (zh) 一种缓存对比方法及设备
CN113672457B (zh) 识别数据库中的异常操作的方法和装置
CN114691197A (zh) 代码分析方法、装置、电子设备和存储介质
CN114706878A (zh) 检查sql语句的方法及装置
JP2003345626A (ja) プロダクト・ナレッジ管理のためのナレッジ・オートメーション・エンジン
US11803357B1 (en) Entity search engine powered by copy-detection
CN118035210A (zh) 数据库的数据字典管理方法、存储介质、设备及产品
US20220334829A1 (en) Custom abap cloud enabler

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Country or region after: China

Address after: 100020 1765, 15th floor, 17th floor, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Applicant after: Beijing 360 Zhiling Technology Co.,Ltd.

Address before: 100020 1765, 15th floor, 17th floor, building 3, No.10, Jiuxianqiao Road, Chaoyang District, Beijing

Applicant before: Beijing Hongxiang Technical Service Co.,Ltd.

Country or region before: China

CB02 Change of applicant information