WO2022105139A1 - 数据库的数据对象关系图谱生成方法、装置、设备及介质 - Google Patents
数据库的数据对象关系图谱生成方法、装置、设备及介质 Download PDFInfo
- Publication number
- WO2022105139A1 WO2022105139A1 PCT/CN2021/091722 CN2021091722W WO2022105139A1 WO 2022105139 A1 WO2022105139 A1 WO 2022105139A1 CN 2021091722 W CN2021091722 W CN 2021091722W WO 2022105139 A1 WO2022105139 A1 WO 2022105139A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- target
- view
- relationship
- name
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 217
- 230000006870 function Effects 0.000 claims description 214
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 13
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 39
- 210000001072 colon Anatomy 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012954 risk control Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Abstract
本申请涉及大数据技术领域,揭示了一种数据库的数据对象关系图谱生成方法、装置、设备及介质,其中方法包括:根据ORACLE数据库代码得到待分析视图数据;对待分析视图数据进行解析得到第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标包定义存储过程关系、目标包定义函数关系、目标调用函数关系、目标调用存储过程关系、目标调用表关系、目标调用视图关系、目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据确定目标数据对象关系图谱。从而自动化生成基于数据对象的关系图谱。本申请还涉及区块链技术。
Description
本申请要求于2020年11月17日提交中国专利局、申请号为2020112903762,发明名称为“数据库的数据对象关系图谱生成方法、装置、设备及介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及到大数据技术领域,特别是涉及到一种数据库的数据对象关系图谱生成方法、装置、设备及介质。
发明人意识到目前的数据库开发工具在对数据库的数据对象进行分析时,只能分析包和表之间的引用关系,当一个包中有多个存储过程时,无法判断每个存储过程对表的引用,导致在表结构或表数据内容有异常变化时,难以评估对整个数据库的影响。
旨在解决现有数据库开发工具只能分析包和表之间的引用关系,无法判断每个存储过程对表的引用,导致难以评估表结构或表数据内容的异常变化对数据库的影响的技术问题。
本申请的主要目的为提供一种数据库的数据对象关系图谱生成方法、装置、设备及介质,旨在解决现有数据库开发工具只能分析包和表之间的引用关系,无法判断每个存储过程对表的引用,导致难以评估表结构或表数据内容的异常变化对数据库的影响的技术问题。
为了实现上述发明目的,本申请提出一种数据库的数据对象关系图谱生成方法,所述方法包括:
获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;
从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数 据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本申请还提出了一种数据库的数据对象关系图谱生成装置,所述装置包括:
待分析视图数据获取模块,用于获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
目标表名数据确定模块,用于获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
第一依赖关系数据确定模块,用于获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
第二依赖关系数据确定模块,用于根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
第三依赖关系数据确定模块,用于获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
第四依赖关系数据确定模块,用于获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图,从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
目标数据对象关系图谱确定模块,用于根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本申请还提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如下方法步骤:
获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取 非系统用户的数据库视图,得到目标数据库视图;
从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本申请还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;
从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本申请的数据库的数据对象关系图谱生成方法、装置、设备及介质,通过根据ORACLE数据库代码得到待分析视图数据,然后根据目标关键字对待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系,根据存储过程关键字、函数关键字、目标存储过程名和目标函数名在待分析视图数据中进行逐行匹配,得到第二依赖关系数据,第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系,采用目标表名数据、表更新关键字和数据库视图数据对待分析视图数据进行逐行解析,得到第三依赖关系数据,第三依赖关系数据包括:目标调用表关系和目标调用视图关系,从表名管理表、数据库视图数据、待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据目标视图调用数据对象数据在目标数据库视图中进行匹配,得到第四依赖关系数据,第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图 调用表关系,根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标数据对象关系图谱,从而自动化生成了基于包、存储过程、函数、表、视图等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
图1为本申请一实施例的数据库的数据对象关系图谱生成方法的流程示意图;
图2为本申请一实施例的数据库的数据对象关系图谱生成装置的结构示意框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了解决现有数据库开发工具只能分析包和表之间的引用关系,无法判断每个存储过程对表的引用,导致难以评估表结构或表数据内容的异常变化对数据库的影响,本申请提出了一种数据库的数据对象关系图谱生成方法,所述方法应用于大数据技术领域,所述方法进一步应用于大数据的数据库技术领域,所述方法还可以应用于区块链技术领域。所述数据库的数据对象关系图谱生成方法通过自动化分析ORACLE数据库的代码,找出函数、存储过程、包的文本,找出数据对象的引用关系,找出表的被更新方式,从而生成基于包、存储过程、函数、表等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
参照图1,本申请实施例中提供一种数据库的数据对象关系图谱生成方法,所述方法包括:
S1:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
S2:获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
S3:获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
S4:根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
S5:获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
S6:获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;
S7:从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数 据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
S8:根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本实施例通过根据ORACLE数据库代码得到待分析视图数据,然后根据目标关键字对待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系,根据存储过程关键字、函数关键字、目标存储过程名和目标函数名在待分析视图数据中进行逐行匹配,得到第二依赖关系数据,第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系,采用目标表名数据、表更新关键字和数据库视图数据对待分析视图数据进行逐行解析,得到第三依赖关系数据,第三依赖关系数据包括:目标调用表关系和目标调用视图关系,从表名管理表、数据库视图数据、待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据目标视图调用数据对象数据在目标数据库视图中进行匹配,得到第四依赖关系数据,第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系,根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标数据对象关系图谱,从而自动化生成了基于包、存储过程、函数、表、视图等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
对于S1,ORACLE数据库是面向Internet计算环境的数据库,ORACLE数据库代码的所有函数、存储过程和包的完整文本都存储在内置视图数据中。内置视图数据表述为表结构,内置视图数据包括:文本内容、属主、包名、对象类型、代码行数。比如,内置视图数据名称为DBA_SOURCE,在此举例不做具体限定。
从ORACLE数据库代码中提取出内置视图数据,得到待分析视图数据。
可选的,将所述待分析视图数据存储在第一中间表中。比如,第一中间表为UDL_META_SOURCE_INOUT1,在此举例不做具体限定。
第一中间表包括:文本内容、属主、包名、对象类型、代码行数。比如,文本内容、属主、包名、对象类型、代码行数分别写为:text、OWNER、NAME、TYPE、LINE,在此举例不做具体限定。
对于S2,从数据库中获取表名管理表,从所述表名管理表中获取表名,将获取的表名放入一个集合中,得到目标表名集合,将所述目标表名集合中的表名在所述待分析视图数据中进行逐行匹配,将在所述待分析视图数据中匹配成功的行数和表名进行关联,将关联后的行数和表名作为目标表名匹配结果。
可选的,将所述目标表名集合存入第一游标中。
可选的,将目标表名匹配结果存储在第二中间表。比如,第二中间表为UDL_META_SOURCE_INOUT2,在此举例不做具体限定。
第二中间表包括:文本内容、属主、包名、对象类型、代码行数、表名。比如,文本内容、属主、包名、对象类型、代码行数、表名分别写为:text、OWNER、NAME、TYPE、LINE、TABLE_NAME,在此举例不做具体限定。
目标表名匹配结果包括一条或多条表名匹配结果。表名匹配结果用于记录所述待分析视图数据哪行有哪些表名,表名匹配结果包括:行数、表名。
对于S3,从数据库中获取目标关键字,将所述目标关键字在所述待分析视图 数据的文本内容字段中进行查找,将在所述待分析视图数据的文本内容字段中找到以所述目标关键字开头的行则进行解析,将存储过程关键字后面的第一个单词作为目标存储过程名,将函数关键字后面的第一个单词作为目标函数名,从所述待分析视图数据的包名字段中获取目标包名,根据目标包名、目标存储过程名、目标函数名确定第一依赖关系数据。
比如,包名存储在包名字段(也就是NAME)中,存储过程和函数存储在文本内容字段(也就是TEXT)中,需要通过存储过程关键字PROCEDURE进行解析后得到目标存储过程名,通过函数关键字FUNCTION进行解析后得到目标函数名,在此举例不做具体限定。
可选的,将所述目标包名和所述目标函数名存储在第二游标中。
目标包定义存储过程关系的依赖关系表述为:第一关系标记+冒号+目标包名+调用+目标存储过程名。比如:第一关系标记为1,目标包名为PKG,目标存储过程名proc_Dver,则目标包定义存储过程关系的依赖关系为:1:PKG调用proc_Dver,在此举例不做具体限定。
目标包定义函数关系的依赖关系表述为:第一关系标记+冒号+目标包名+调用+目标函数名。比如:第一关系标记为1,目标包名为PKG,目标函数名func_Aver,则目标包定义函数关系的依赖关系为:1:PKG调用func_Aver,在此举例不做具体限定。
对于S4,将所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配;如果发现所述目标存储过程名在该行,但是在所述目标存储过程名之前没有发现存储过程关键字,则可以判断所述目标存储过程名是被该行所在的存储过程或函数调用,将该调用关系作为目标调用存储过程关系;如果发现所述目标函数名在该行,但是在所述目标函数名之前没有发现函数关键字,则可以判断所述目标函数名是被该行所在的函数或存储过程调用,将该调用关系作为目标调用函数关系。
目标调用存储过程关系的依赖关系表述为:第二关系标记+冒号+调用对象+调用+被调用的存储过程名,调用对象包括函数或存储过程。比如:第二关系标记为2,调用对象为目标函数名func_Aver,被调用的存储过程名为目标存储过程名proc_Dver,则目标调用存储过程关系的依赖关系为:2:func_Aver调用proc_Dver,在此举例不做具体限定。
目标调用函数关系的依赖关系表述为:第二关系标记+冒号+调用对象+调用+被调用的函数名,调用对象包括函数或存储过程。比如:第二关系标记为2,调用对象为目标存储过程名proc_Dver,被调用的函数名为目标函数名func_Aver,则目标调用函数关系的依赖关系为:2:proc_Dver调用func_Aver,在此举例不做具体限定。
对于S5,表更新关键字包括:DELETE FROM、INSERT INTO、MERGE INTO、UPDATE。其中,DELETE FROM,是对表中进行删除操作。INSERT INTO,是在表中进行插入操作;MERGE INTO是在表中进行合并更新操作;UPDATE,是对表进行更新操作。
采用所述目标表名数据对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中找到所述目标表名数据中的表名时,根据找到的所述目标表名数据中的表名确定目标调用表关系;采用所述目标视图名对所述待分析视图数据进行逐行解析,得到所述目标调用视图关系。
目标调用视图关系的依赖关系表述为:第三关系标记+冒号+调用对象+调用+ 被调用的视图,调用对象包括函数或存储过程。比如:第三关系标记为3,调用对象为目标函数名func_Aver,被调用的视图名VIEWS_X1,则目标调用视图关系的依赖关系为:3:func_Aver调用VIEWS_X1,在此举例不做具体限定。
对于S6,将所述非系统用户标识在所述数据库视图数据中查找数据库视图,将查找到的数据库视图作为目标数据库视图。
非系统用户标识,是指非数据库的用户的用户标识。用户标识可以是用户名称、用户ID等唯一标识一个用户的标识。
可选的,将目标数据库视图存储在第三中间表中。比如,第三中间表为UDL_META_SOURCE_INOUT3,在此举例不做具体限定。
对于S7,将所述目标视图调用数据对象数据的数据对象在所述目标数据库视图中进行匹配,根据在所述目标数据库视图中匹配成功的数据对象得到第四依赖关系数据。
目标视图调用数据对象数据,也是视图调用的数据对象。数据对象包括:视图、表、函数。
可选的,将所述目标视图调用数据对象数据存储在第三游标中。
目标视图调用表关系的依赖关系表述为:第四关系标记+冒号+调用视图+调用+被调用的表名。比如:第四关系标记为4,调用视图为VIEWS_X1,被调用的表名为TABLE_T1,则目标视图调用表关系的依赖关系为:4:VIEWS_X1调用TABLE_T1,在此举例不做具体限定。
目标视图调用视图关系的依赖关系表述为:第四关系标记+冒号+调用视图+调用+被调用的视图名。比如:第四关系标记为4,调用视图为VIEWS_X1,被调用的视图名为VIEWS_X2,则目标视图调用视图关系的依赖关系为:4:VIEWS_X1调用VIEWS_X2,在此举例不做具体限定。
目标视图调用函数关系的依赖关系表述为:第四关系标记+冒号+调用视图+调用+被调用对象,被调用对象为被调用的函数名。比如:第四关系标记为4,调用视图为VIEWS_X1,被调用的函数名为func_Aver1,则目标视图调用函数关系的依赖关系为:4:VIEWS_X1调用func_Aver1,在此举例不做具体限定。
对于S8,将所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据存入数据源输入输出关系表的依赖关系字段中;将数据源输入输出关系表中的依赖关系数据作为所述目标数据对象关系图谱。
目标数据对象关系图谱包括数据对象、数据对象之间的依赖关系数据。
数据源输入输出关系表包括:统计日期、属主、对象类型、对象名、依赖对象属主、依赖对象类型、依赖对象名称、依赖对象的代码行数、依赖关系、输入输出类型、输入输出类型检查。
需要强调的是,为进一步保证上述目标数据对象关系图谱的私密和安全性,上述目标数据对象关系图谱还可以存储至区块链系统的区块链上。
所述区块链,是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护 (权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
在一个实施例中,上述获取待分析视图数据的步骤,包括:
S11:获取所述ORACLE数据库代码;
S12:从所述ORACLE数据库代码中获取内置视图数据,得到待分析内置视图数据;
S13:对所述待分析内置视图数据进行注释删除处理,得到所述待分析视图数据。
本实施例实现了从ORACLE数据库代码得到待分析内置视图数据,然后对待分析内置视图数据进行注释删除处理得到所述待分析视图数据,从而避免将注释中的依赖关系错误当成ORACLE数据库代码的依赖关系,提高了确定目标数据对象关系图谱的准确性。
对于S12,根据内置视图数据的名称从所述ORACLE数据库代码中获取内置视图数据,将获取的内置视图数据作为待分析内置视图数据。
对于S13,获取注释标识符;根据注释标识符在所述待分析内置视图数据中进行注释查找及删除,将删除注释后的所述待分析内置视图数据作为所述待分析视图数据。
可选的,注释标识符包括:单行注释符和多行注释符。比如,单行注释符为--,多行注释符的开始符为/*,多行注释符的结束符为*/,在此举例不做具体限定。
在一个实施例中,上述根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名的步骤,包括:
S31:从所述待分析视图数据的文本内容中获取所述存储过程关键字之后的第一个单词,得到所述目标存储过程名;
S32:从所述待分析视图数据的文本内容中获取所述函数关键字之后的第一个单词,得到所述目标函数名;
S33:从所述待分析视图数据中获取包名的数值,得到目标包名;
S34:根据所述目标包名和所述目标存储过程名,得到所述第一依赖关系数据的所述目标包定义存储过程关系;
S35:根据所述目标包名和所述目标函数名,得到所述第一依赖关系数据的所述目标包定义函数关系。
本实施例实现了根据根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,找出了包定义函数和存储过程的关系,为后续确定目标数据对象关系图谱提供了数据支持。
对于S31,将所述存储过程关键字在所述待分析视图数据的文本内容中进行 查找,将在所述待分析视图数据的文本内容中查找到的所述存储过程关键字后的第一个单词作为所述目标存储过程名。可以理解的是,所述目标存储过程名的数量可以为一个,也可以为多个,还可以是零个。
对于S32,将所述函数关键字在所述待分析视图数据的文本内容中进行查找,将在所述待分析视图数据的文本内容中查找到的所述函数关键字后的第一个单词作为所述目标函数名。可以理解的是,所述目标函数名的数量可以为一个,也可以为多个,还可以是零个。
对于S33,从所述待分析视图数据的包名字段(也就是NAME)中获取包名的数值,将获取的包名的数值作为目标包名。
对于S34,将所述目标包名与每一个所述目标存储过程名进行关联,将关联数据作为所述第一依赖关系数据的所述目标包定义存储过程关系。
对于S35,将所述目标包名与每一个所述目标函数名进行关联,将关联数据作为所述第一依赖关系数据的所述目标包定义函数关系。
在一个实施例中,上述采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据的步骤,包括:
S51:采用所述目标表名数据对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中找到所述目标表名数据的表名时,则当找到的所述目标表名数据的表名是所述表更新关键字之后的第一个单词时根据所述表更新关键字和找到的所述目标表名数据的表名确定输出调用表关系,否则根据找到的所述目标表名数据的表名确定输入调用表关系;
S52:根据所述输出调用表关系和所述输入调用表关系,确定所述第三依赖关系数据的所述目标调用表关系;
S53:从所述数据库视图数据中获取视图名,得到目标视图名;
S54:采用所述目标视图名对所述待分析视图数据进行逐行解析,得到所述第三依赖关系数据的所述目标调用视图关系。
本实施例实现了采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析得到第三依赖关系数据,找出了存储过程或函数调用表或视图的关系,为后续确定目标数据对象关系图谱提供了数据支持。
对于S51,当找到的所述目标表名数据的表名是所述表更新关键字之后的第一个单词时,根据找到的所述目标表名数据的表名在所述待分析视图数据中找到调用对象,将找到的调用对象和找到的所述目标表名数据的表名关联,得到输出调用表关系;当找到的所述目标表名数据的表名不是所述表更新关键字之后的第一个单词时,根据找到的所述目标表名数据的表名在所述待分析视图数据中找到调用对象,将找到的调用对象和找到的所述目标表名数据的表名关联,得到输入调用表关系。
输出调用表关系包括:依赖关系、输入输出类型。
输入调用表关系包括:依赖关系、输入输出类型。
输出调用表关系的依赖关系表述为:第三关系标记+冒号+调用对象+调用+被调用的表名,调用对象包括函数或存储过程。比如:第三关系标记为3,调用对象为目标函数名func_Aver,被调用的表名TABLE_ADD,则输出调用表关系的依赖关系为:3:func_Aver调用TABLE_ADD,在此举例不做具体限定。
输出调用表关系的输入输出类型包括:表更新关键字+输出。比如,当表更 新关键字为DELETE FROM,输出调用表关系的输入输出类型为DELETE输出,在此举例不做具体限定。
输入调用表关系的输入输出类型包括:输入。
可选的,将输出调用表关系的输入输出类型存储在数据源输入输出关系表的输入输出类型字段中,将所述输出调用表关系的依赖关系存储在数据源输入输出关系表的依赖关系字段中。
可选的,将输入调用表关系的输入输出类型存储在数据源输入输出关系表的输入输出类型字段中,将所述输入调用表关系的依赖关系存储在数据源输入输出关系表的依赖关系字段中。
可选的,将输入调用表关系的依赖关系存储在数据源输入输出关系表的依赖关系字段中。
对于S52,将所述输出调用表关系作为所述目标调用表关系,将所述输入调用表关系作为所述目标调用表关系。
对于S54,采用所述目标视图名对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中查找成功时,根据所述目标视图名在所述待分析视图数据中所在的行确定调用对象,将调用对象和所述目标视图名关联,得到所述目标调用视图关系。
在一个实施例中,上述从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据的步骤,包括:
S71:从所述表名管理表中获取表,得到所述目标视图调用数据对象数据的表;
S72:从所述数据库视图数据中获取视图,得到所述目标视图调用数据对象数据的视图;
S73:从所述待分析视图数据中获取函数,得到所述目标视图调用数据对象数据的函数;
S74:将所述目标视图调用数据对象数据的表在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的表确定所述目标视图调用表关系;
S75:将所述目标视图调用数据对象数据的视图在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的视图确定所述目标视图调用视图关系;
S76:将所述目标视图调用数据对象数据的函数在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的函数确定所述目标视图调用函数关系。
本实施例实现了根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,找出了视图调用视图、表、函数的关系,为后续确定目标数据对象关系图谱提供了数据支持。
对于S71,从所述表名管理表中获取表的名称,将获取的表的名称所述目标视图调用数据对象数据的表的名称。
对于S72,从所述数据库视图数据中获取视图的名称,得到所述目标视图调用数据对象数据的视图的名称。
对于S73,从所述待分析视图数据中获取函数的名称,得到所述目标视图调 用数据对象数据的函数的名称。
对于S74,将所述目标视图调用数据对象数据的表的名称在所述目标数据库视图中进行匹配,将在所述目标数据库视图中找到的表的名称和所述目标数据库视图的名称关联,得到所述目标视图调用表关系。
可选的,将视图调用表关系的依赖关系存储在数据源输入输出关系表的依赖关系字段中。
对于S75,将所述目标视图调用数据对象数据的视图的名称在所述目标数据库视图中进行匹配,将在所述目标数据库视图中找到的视图的名称和所述目标数据库视图的名称关联,得到所述目标视图调用视图关系。
可选的,将视图调用视图关系的依赖关系存储在数据源输入输出关系表的依赖关系字段中。
对于S76,将所述目标视图调用数据对象数据的函数的名称在所述目标数据库视图中进行匹配,将在所述目标数据库视图中找到的函数的名称和所述目标数据库视图的名称关联,得到所述目标视图调用函数关系。
在一个实施例中,上述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,包括:
S811:从所述目标数据对象关系图谱中获取数据对象,得到待去重数据对象集合;
S812:对所述待去重数据对象集合中的数据对象进行去重处理,得到待展示数据对象集合;
S813:将所述待展示数据对象集合中的数据对象作为目标点集合;
S814:根据所述目标数据对象关系图谱中的依赖关系数据,确定目标边集合,所述目标边集合包括:目标边数据,所述目标边数据包括:目标边起点和目标边终点;
S815:根据所述目标点集合、所述目标边集合对所述目标数据对象关系图谱进行图形化展示。
本实施例将目标数据对象关系图谱进行图形化展示,有利于用户快速查看,提高了用户体验。
对于S811,从所述目标数据对象关系图谱中获取数据对象的名称,将获取的数据对象的名称放入一个集合,得到待去重数据对象集合。
对于S812,对所述待去重数据对象集合中的数据对象的名称进行去重处理,得到待展示数据对象集合。也就是说,待展示数据对象集合中的每个数据对象的名称在待展示数据对象集合中具有唯一性。
对于S813,将所述待展示数据对象集合中的数据对象的名称放入集合,得到目标点集合。
对于S814,将所述目标数据对象关系图谱中的依赖关系数据(也就是所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据)的调用对象的名称作为目标边终点,将所述目标数据对象关系图谱中的依赖关系数据(也就是所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据)的被调用对象的名称作为目标边起点。
在一个实施例中,上述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的 步骤之后,还包括:
S821:获取被调用查询请求,所述被调用查询请求携带有待查询被调用数据对象标识;
S822:根据所述待查询被调用数据对象标识从所述目标数据对象关系图谱的依赖关系的被调用对象中进行查询,得到第一目标依赖关系数据;
S823:从所述第一目标依赖关系数据中进行调用对象提取,得到所述待查询被调用数据对象标识对应的调用对象集合。
本实施例通过目标数据对象关系图谱查询数据对象被哪些数据对象调用,有利于用户根据调用对象集合在表结构或表数据内容的异常变化时可以快速评估对数据库的影响。
对于S821,获取用户输入的被调用查询请求,也可以获取应用程序发送的被调用查询请求。
被调用查询请求,是查询待查询被调用数据对象标识对应的数据对象被哪些数据对象调用的请求。
待查询被调用数据对象标识,是需要查询被哪些数据对象调用的数据对象的数据对象标识。
数据对象标识可以是数据对象名称、数据对象ID等唯一标识一个数据对象的标识。
可选的,被调用查询请求表述为SQL语句。比如,被调用查询请求为SELECT DEPENDENCIES_NAME FORM DML_META_SOURCE_INOUT WHERE NAME=“A”,其中,待查询被调用数据对象标识为A,在此举例不做具体限定。
对于S822,将所述待查询被调用数据对象标识从所述目标数据对象关系图谱的依赖关系的被调用对象中进行查询,将在所述目标数据对象关系图谱的依赖关系的被调用对象中查询到的被调用对象对应的依赖关系作为第一目标依赖关系数据。
对于S823,从所述第一目标依赖关系数据中提取出调用对象的名称,将提取出的调用对象的名称放入一个集合,得到所述待查询被调用数据对象标识对应的调用对象集合。
在一个实施例中,上述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,还包括:
S831:获取调用查询请求,所述被调用查询请求携带有待查询调用数据对象标识;
S832:根据所述待查询调用数据对象标识从所述目标数据对象关系图谱的依赖关系的调用对象中查询,得到第二目标依赖关系数据;
S833:从所述第二目标依赖关系数据中提取被调用对象,得到所述待查询调用数据对象标识对应的调用对象集合。
本实施例通过目标数据对象关系图谱查询数据对象调用哪些数据对象,有利于用户根据被调用对象集合在表结构或表数据内容的异常变化时可以快速评估对数据库的影响。
对于S831,获取用户输入的调用查询请求,也可以获取应用程序发送的调用查询请求。
调用查询请求,是查询待查询调用数据对象标识对应的数据对象调用哪些数据对象的请求。
待查询调用数据对象标识,是需要查询调用哪些数据对象的数据对象的数据对象标识。
可选的,调用查询请求表述为SQL语句。比如,调用查询请求为SELECT NAME FORM DML_META_SOURCE_INOUT WHERE DEPENDENCIES_NAME=“B”,其中,待查询调用数据对象标识为B,在此举例不做具体限定。
对于S832,将所述待查询调用数据对象标识从所述目标数据对象关系图谱的依赖关系的调用对象中进行查询,将在所述目标数据对象关系图谱的依赖关系的调用对象中查询到的调用对象对应的依赖关系作为第二目标依赖关系数据。
对于S833,从所述第二目标依赖关系数据中提取出被调用对象的名称,将提取出的被调用对象的名称放入一个集合,得到所述待查询调用数据对象标识对应的调用对象集合。
参照图2,本申请还提出了一种数据库的数据对象关系图谱生成装置,所述装置包括:
待分析视图数据获取模块100,用于获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;
目标表名数据确定模块200,用于获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;
第一依赖关系数据确定模块300,用于获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;
第二依赖关系数据确定模块400,用于根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;
第三依赖关系数据确定模块500,用于获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;
第四依赖关系数据确定模块600,用于获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图,从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;
目标数据对象关系图谱确定模块700,用于根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本实施例通过根据ORACLE数据库代码得到待分析视图数据,然后根据目标关键字对待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,第一依赖关系数据包括:目标包定义存储过程关系和目标包定 义函数关系,根据存储过程关键字、函数关键字、目标存储过程名和目标函数名在待分析视图数据中进行逐行匹配,得到第二依赖关系数据,第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系,采用目标表名数据、表更新关键字和数据库视图数据对待分析视图数据进行逐行解析,得到第三依赖关系数据,第三依赖关系数据包括:目标调用表关系和目标调用视图关系,从表名管理表、数据库视图数据、待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据目标视图调用数据对象数据在目标数据库视图中进行匹配,得到第四依赖关系数据,第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系,根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标数据对象关系图谱,从而自动化生成了基于包、存储过程、函数、表、视图等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于储存数据库的数据对象关系图谱生成方法等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据库的数据对象关系图谱生成方法。所述数据库的数据对象关系图谱生成方法,包括:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
本实施例通过根据ORACLE数据库代码得到待分析视图数据,然后根据目标关键字对待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,第一依赖关系数据包括:目标包定义存储过程关系和目标包定 义函数关系,根据存储过程关键字、函数关键字、目标存储过程名和目标函数名在待分析视图数据中进行逐行匹配,得到第二依赖关系数据,第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系,采用目标表名数据、表更新关键字和数据库视图数据对待分析视图数据进行逐行解析,得到第三依赖关系数据,第三依赖关系数据包括:目标调用表关系和目标调用视图关系,从表名管理表、数据库视图数据、待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据目标视图调用数据对象数据在目标数据库视图中进行匹配,得到第四依赖关系数据,第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系,根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标数据对象关系图谱,从而自动化生成了基于包、存储过程、函数、表、视图等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种数据库的数据对象关系图谱生成方法,包括步骤:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
上述执行的数据库的数据对象关系图谱生成方法,通过根据ORACLE数据库代码得到待分析视图数据,然后根据目标关键字对待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系,根据存储过程关键字、函数关键字、目标存储过程名和目标函数名在待分析视图数据中进行逐行匹配,得到第二依赖关系数据,第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系,采用目标表名数据、表更新关键字和数据库视图数据对待分析视图数据进行逐行解析,得到第三依赖关系数据,第三依赖关系数据包括:目标调用表关系和目标调用视图关系,从表名管理表、数据库视图数据、待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据目标视图调用数据对象数据在 目标数据库视图中进行匹配,得到第四依赖关系数据,第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系,根据第一依赖关系数据、第二依赖关系数据、第三依赖关系数据和第四依赖关系数据,确定目标数据对象关系图谱,从而自动化生成了基于包、存储过程、函数、表、视图等数据对象之间的关系图谱,在表结构或表数据内容的异常变化时基于关系图谱可以快速评估对数据库的影响。
所述计算机存储介质可以是非易失性,也可以是易失性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (20)
- 一种数据库的数据对象关系图谱生成方法,其中,所述方法包括:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述获取待分析视图数据的步骤,包括:获取所述ORACLE数据库代码;从所述ORACLE数据库代码中获取内置视图数据,得到待分析内置视图数据;对所述待分析内置视图数据进行注释删除处理,得到所述待分析视图数据。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名的步骤,包括:从所述待分析视图数据的文本内容中获取所述存储过程关键字之后的第一个单词,得到所述目标存储过程名;从所述待分析视图数据的文本内容中获取所述函数关键字之后的第一个单词,得到所述目标函数名;从所述待分析视图数据中获取包名的数值,得到目标包名;根据所述目标包名和所述目标存储过程名,得到所述第一依赖关系数据的所述目标包定义存储过程关系;根据所述目标包名和所述目标函数名,得到所述第一依赖关系数据的所述目标包定义函数关系。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析 视图数据进行逐行解析,得到第三依赖关系数据的步骤,包括:采用所述目标表名数据对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中找到所述目标表名数据的表名时,则当找到的所述目标表名数据的表名是所述表更新关键字之后的第一个单词时根据所述表更新关键字和找到的所述目标表名数据的表名确定输出调用表关系,否则根据找到的所述目标表名数据的表名确定输入调用表关系;根据所述输出调用表关系和所述输入调用表关系,确定所述第三依赖关系数据的所述目标调用表关系;从所述数据库视图数据中获取视图名,得到目标视图名;采用所述目标视图名对所述待分析视图数据进行逐行解析,得到所述第三依赖关系数据的所述目标调用视图关系。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据的步骤,包括:从所述表名管理表中获取表,得到所述目标视图调用数据对象数据的表;从所述数据库视图数据中获取视图,得到所述目标视图调用数据对象数据的视图;从所述待分析视图数据中获取函数,得到所述目标视图调用数据对象数据的函数;将所述目标视图调用数据对象数据的表在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的表确定所述目标视图调用表关系;将所述目标视图调用数据对象数据的视图在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的视图确定所述目标视图调用视图关系;将所述目标视图调用数据对象数据的函数在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的函数确定所述目标视图调用函数关系。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,包括:从所述目标数据对象关系图谱中获取数据对象,得到待去重数据对象集合;对所述待去重数据对象集合中的数据对象进行去重处理,得到待展示数据对象集合;将所述待展示数据对象集合中的数据对象作为目标点集合;根据所述目标数据对象关系图谱中的依赖关系数据,确定目标边集合,所述目标边集合包括:目标边数据,所述目标边数据包括:目标边起点和目标边终点;根据所述目标点集合、所述目标边集合对所述目标数据对象关系图谱进行图形化展示。
- 根据权利要求1所述的数据库的数据对象关系图谱生成方法,其中,所述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,还包括:获取被调用查询请求,所述被调用查询请求携带有待查询被调用数据对象标 识;根据所述待查询被调用数据对象标识从所述目标数据对象关系图谱的依赖关系的被调用对象中进行查询,得到第一目标依赖关系数据;从所述第一目标依赖关系数据中进行调用对象提取,得到所述待查询被调用数据对象标识对应的调用对象集合。
- 一种数据库的数据对象关系图谱生成装置,其中,所述装置包括:待分析视图数据获取模块,用于获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;目标表名数据确定模块,用于获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;第一依赖关系数据确定模块,用于获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;第二依赖关系数据确定模块,用于根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;第三依赖关系数据确定模块,用于获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;第四依赖关系数据确定模块,用于获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图,从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;目标数据对象关系图谱确定模块,用于根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
- 一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其中,所述处理器执行所述计算机程序时实现如下方法步骤:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
- 根据权利要求9所述的计算机设备,其中,所述获取待分析视图数据的步骤,包括:获取所述ORACLE数据库代码;从所述ORACLE数据库代码中获取内置视图数据,得到待分析内置视图数据;对所述待分析内置视图数据进行注释删除处理,得到所述待分析视图数据。
- 根据权利要求9所述的计算机设备,其中,所述根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名的步骤,包括:从所述待分析视图数据的文本内容中获取所述存储过程关键字之后的第一个单词,得到所述目标存储过程名;从所述待分析视图数据的文本内容中获取所述函数关键字之后的第一个单词,得到所述目标函数名;从所述待分析视图数据中获取包名的数值,得到目标包名;根据所述目标包名和所述目标存储过程名,得到所述第一依赖关系数据的所述目标包定义存储过程关系;根据所述目标包名和所述目标函数名,得到所述第一依赖关系数据的所述目标包定义函数关系。
- 根据权利要求9所述的计算机设备,其中,所述采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据的步骤,包括:采用所述目标表名数据对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中找到所述目标表名数据的表名时,则当找到的所述目标表名数据的表名是所述表更新关键字之后的第一个单词时根据所述表更新关键字和找到的所述目标表名数据的表名确定输出调用表关系,否则根据找到的所述目标表名数据的表名确定输入调用表关系;根据所述输出调用表关系和所述输入调用表关系,确定所述第三依赖关系数据的所述目标调用表关系;从所述数据库视图数据中获取视图名,得到目标视图名;采用所述目标视图名对所述待分析视图数据进行逐行解析,得到所述第三依赖关系数据的所述目标调用视图关系。
- 根据权利要求9所述的计算机设备,其中,所述从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹 配,得到第四依赖关系数据的步骤,包括:从所述表名管理表中获取表,得到所述目标视图调用数据对象数据的表;从所述数据库视图数据中获取视图,得到所述目标视图调用数据对象数据的视图;从所述待分析视图数据中获取函数,得到所述目标视图调用数据对象数据的函数;将所述目标视图调用数据对象数据的表在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的表确定所述目标视图调用表关系;将所述目标视图调用数据对象数据的视图在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的视图确定所述目标视图调用视图关系;将所述目标视图调用数据对象数据的函数在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的函数确定所述目标视图调用函数关系。
- 根据权利要求9所述的计算机设备,其中,所述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,包括:从所述目标数据对象关系图谱中获取数据对象,得到待去重数据对象集合;对所述待去重数据对象集合中的数据对象进行去重处理,得到待展示数据对象集合;将所述待展示数据对象集合中的数据对象作为目标点集合;根据所述目标数据对象关系图谱中的依赖关系数据,确定目标边集合,所述目标边集合包括:目标边数据,所述目标边数据包括:目标边起点和目标边终点;根据所述目标点集合、所述目标边集合对所述目标数据对象关系图谱进行图形化展示。
- 一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如下方法步骤:获取待分析视图数据,所述待分析视图数据是根据ORACLE数据库代码得到的数据;获取表名管理表,根据所述表名管理表在所述待分析视图数据中进行逐行匹配,将匹配成功的行数和表名作为目标表名数据;获取目标关键字,所述目标关键字包括:存储过程关键字、函数关键字、包名关键字,根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名,所述第一依赖关系数据包括:目标包定义存储过程关系和目标包定义函数关系;根据所述存储过程关键字、所述函数关键字、所述目标存储过程名和所述目标函数名在所述待分析视图数据中进行逐行匹配,得到第二依赖关系数据,所述第二依赖关系数据包括:目标调用函数关系和目标调用存储过程关系;获取表更新关键字、数据库视图数据,采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据,所述第三依赖关系数据包括:目标调用表关系和目标调用视图关系;获取非系统用户标识,采用所述非系统用户标识从所述数据库视图数据获取非系统用户的数据库视图,得到目标数据库视图;从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据,所述第四依赖关系数据包括:目标视图调用函数关系、目标视图调用视图关系和目标视图调用表关系;根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱。
- 根据权利要求15所述的计算机可读存储介质,其中,所述获取待分析视图数据的步骤,包括:获取所述ORACLE数据库代码;从所述ORACLE数据库代码中获取内置视图数据,得到待分析内置视图数据;对所述待分析内置视图数据进行注释删除处理,得到所述待分析视图数据。
- 根据权利要求15所述的计算机可读存储介质,其中,所述根据所述目标关键字对所述待分析视图数据进行逐行解析,得到第一依赖关系数据、目标存储过程名和目标函数名的步骤,包括:从所述待分析视图数据的文本内容中获取所述存储过程关键字之后的第一个单词,得到所述目标存储过程名;从所述待分析视图数据的文本内容中获取所述函数关键字之后的第一个单词,得到所述目标函数名;从所述待分析视图数据中获取包名的数值,得到目标包名;根据所述目标包名和所述目标存储过程名,得到所述第一依赖关系数据的所述目标包定义存储过程关系;根据所述目标包名和所述目标函数名,得到所述第一依赖关系数据的所述目标包定义函数关系。
- 根据权利要求15所述的计算机可读存储介质,其中,所述采用所述目标表名数据、所述表更新关键字和所述数据库视图数据对所述待分析视图数据进行逐行解析,得到第三依赖关系数据的步骤,包括:采用所述目标表名数据对所述待分析视图数据进行逐行解析,当在所述待分析视图数据中找到所述目标表名数据的表名时,则当找到的所述目标表名数据的表名是所述表更新关键字之后的第一个单词时根据所述表更新关键字和找到的所述目标表名数据的表名确定输出调用表关系,否则根据找到的所述目标表名数据的表名确定输入调用表关系;根据所述输出调用表关系和所述输入调用表关系,确定所述第三依赖关系数据的所述目标调用表关系;从所述数据库视图数据中获取视图名,得到目标视图名;采用所述目标视图名对所述待分析视图数据进行逐行解析,得到所述第三依赖关系数据的所述目标调用视图关系。
- 根据权利要求15所述的计算机可读存储介质,其中,所述从所述表名管理表、所述数据库视图数据、所述待分析视图数据获取数据对象,得到目标视图调用数据对象数据,根据所述目标视图调用数据对象数据在所述目标数据库视图中进行匹配,得到第四依赖关系数据的步骤,包括:从所述表名管理表中获取表,得到所述目标视图调用数据对象数据的表;从所述数据库视图数据中获取视图,得到所述目标视图调用数据对象数据的视图;从所述待分析视图数据中获取函数,得到所述目标视图调用数据对象数据的 函数;将所述目标视图调用数据对象数据的表在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的表确定所述目标视图调用表关系;将所述目标视图调用数据对象数据的视图在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的视图确定所述目标视图调用视图关系;将所述目标视图调用数据对象数据的函数在所述目标数据库视图中进行匹配,当匹配成功时,根据所述目标数据库视图的名称和所述目标视图调用数据对象数据的函数确定所述目标视图调用函数关系。
- 根据权利要求15所述的计算机可读存储介质,其中,所述根据所述第一依赖关系数据、所述第二依赖关系数据、所述第三依赖关系数据和所述第四依赖关系数据,确定目标数据对象关系图谱的步骤之后,包括:从所述目标数据对象关系图谱中获取数据对象,得到待去重数据对象集合;对所述待去重数据对象集合中的数据对象进行去重处理,得到待展示数据对象集合;将所述待展示数据对象集合中的数据对象作为目标点集合;根据所述目标数据对象关系图谱中的依赖关系数据,确定目标边集合,所述目标边集合包括:目标边数据,所述目标边数据包括:目标边起点和目标边终点;根据所述目标点集合、所述目标边集合对所述目标数据对象关系图谱进行图形化展示。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011290376.2 | 2020-11-17 | ||
CN202011290376.2A CN112380286B (zh) | 2020-11-17 | 2020-11-17 | 数据库的数据对象关系图谱生成方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022105139A1 true WO2022105139A1 (zh) | 2022-05-27 |
Family
ID=74585010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/091722 WO2022105139A1 (zh) | 2020-11-17 | 2021-04-30 | 数据库的数据对象关系图谱生成方法、装置、设备及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112380286B (zh) |
WO (1) | WO2022105139A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112380286B (zh) * | 2020-11-17 | 2022-03-18 | 平安科技(深圳)有限公司 | 数据库的数据对象关系图谱生成方法、装置、设备及介质 |
CN112711753B (zh) * | 2021-02-23 | 2022-02-08 | 中科微点(南京)科技有限公司 | 基于区块链金融服务的信息认证方法及区块链服务系统 |
CN115645905B (zh) * | 2022-10-21 | 2023-06-20 | 圣名科技(广州)有限责任公司 | 游标显示的方法和装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014149613A (ja) * | 2013-01-31 | 2014-08-21 | Toshiba Corp | 項目間関連解析装置 |
CN109815230A (zh) * | 2018-12-23 | 2019-05-28 | 国网浙江省电力有限公司 | 一种基于知识图谱的全业务数据中心数据审计方法 |
CN110555015A (zh) * | 2019-09-09 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 数据库实体管理方法、装置、电子设备及存储介质 |
CN111143368A (zh) * | 2019-12-27 | 2020-05-12 | 瀚高基础软件股份有限公司 | 一种关系型数据库数据对比方法及系统 |
CN111414352A (zh) * | 2020-03-27 | 2020-07-14 | 北京明略软件系统有限公司 | 一种数据库信息的管理方法和装置 |
CN112380286A (zh) * | 2020-11-17 | 2021-02-19 | 平安科技(深圳)有限公司 | 数据库的数据对象关系图谱生成方法、装置、设备及介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2721728B1 (fr) * | 1994-06-28 | 1996-07-26 | Bull Sa | Procédé et dispositif de génération automatique de feuilles de calcul. |
US10073873B2 (en) * | 2014-03-21 | 2018-09-11 | Futurewei Technologies, Inc. | System and method for column-specific materialization scheduling |
CN105224536A (zh) * | 2014-05-29 | 2016-01-06 | 国际商业机器公司 | 划分数据库的方法和装置 |
CN111160403B (zh) * | 2019-12-09 | 2023-09-26 | 青岛聚好联科技有限公司 | 一种api接口复用发现的方法及装置 |
CN111078559B (zh) * | 2019-12-18 | 2023-10-13 | 广州品唯软件有限公司 | java代码中函数调用的提取方法、装置、介质及计算机设备 |
CN111427865A (zh) * | 2020-03-18 | 2020-07-17 | 北京明略软件系统有限公司 | 一种管理数据库的对象的方法和装置 |
CN111767044A (zh) * | 2020-07-04 | 2020-10-13 | 武汉空心科技有限公司 | 一种软件开发工作平台接口可视化方法 |
CN111881301A (zh) * | 2020-07-15 | 2020-11-03 | 北京百度网讯科技有限公司 | 一种数据处理方法、装置、电子设备和存储介质 |
-
2020
- 2020-11-17 CN CN202011290376.2A patent/CN112380286B/zh active Active
-
2021
- 2021-04-30 WO PCT/CN2021/091722 patent/WO2022105139A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014149613A (ja) * | 2013-01-31 | 2014-08-21 | Toshiba Corp | 項目間関連解析装置 |
CN109815230A (zh) * | 2018-12-23 | 2019-05-28 | 国网浙江省电力有限公司 | 一种基于知识图谱的全业务数据中心数据审计方法 |
CN110555015A (zh) * | 2019-09-09 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 数据库实体管理方法、装置、电子设备及存储介质 |
CN111143368A (zh) * | 2019-12-27 | 2020-05-12 | 瀚高基础软件股份有限公司 | 一种关系型数据库数据对比方法及系统 |
CN111414352A (zh) * | 2020-03-27 | 2020-07-14 | 北京明略软件系统有限公司 | 一种数据库信息的管理方法和装置 |
CN112380286A (zh) * | 2020-11-17 | 2021-02-19 | 平安科技(深圳)有限公司 | 数据库的数据对象关系图谱生成方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112380286A (zh) | 2021-02-19 |
CN112380286B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022105139A1 (zh) | 数据库的数据对象关系图谱生成方法、装置、设备及介质 | |
CN108829727B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
US11394805B1 (en) | Automatic discovery of API information | |
WO2020220638A1 (zh) | 链路系统与日志系统的关联方法、装置及存储介质 | |
CN111310427A (zh) | 业务数据配置处理方法、装置、计算机设备和存储介质 | |
CN108512854B (zh) | 制度信息安全监控方法、装置、计算机设备和存储介质 | |
CN112434059B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111027295A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN110224855B (zh) | 微服务实例的注册方法、装置、计算机设备及存储介质 | |
CN108717426B (zh) | 企业数据的更新方法、装置、计算机设备及存储介质 | |
CN106251114B (zh) | 应用中实现审批的方法和装置 | |
US11620445B2 (en) | System and method for implementing an automatic data collection and presentation generator module | |
CN111767297B (zh) | 大数据处理方法、装置、设备及介质 | |
CN112613067A (zh) | 用户行为数据采集方法、装置、计算机设备及存储介质 | |
CN112559526A (zh) | 数据表导出方法、装置、计算机设备及存储介质 | |
CN113127450A (zh) | 数据的维护方法、装置、计算机设备及存储介质 | |
CN112528201A (zh) | 调用第三方平台的方法、装置、计算机设备和存储介质 | |
CN110598475A (zh) | 基于区块链的作品属性信息获取方法、装置和计算机设备 | |
CN114444072A (zh) | 数据库集群巡检方法、装置、设备及存储介质 | |
CN112364059B (zh) | 多规则场景下关联匹配方法、装置、设备和存储介质 | |
US9665732B2 (en) | Secure Download from internet marketplace | |
CN113127519A (zh) | 文件的查询方法、装置、计算机设备及存储介质 | |
CN113296960A (zh) | 数据准实时分发方法、装置、设备及存储介质 | |
CN112069223A (zh) | 数据获取需求处理方法、装置、计算机设备和存储介质 | |
CN111563126B (zh) | 一种基于区块链系统的数据处理方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21893295 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21893295 Country of ref document: EP Kind code of ref document: A1 |