CN109656928A - 表间关系获得方法及装置 - Google Patents
表间关系获得方法及装置 Download PDFInfo
- Publication number
- CN109656928A CN109656928A CN201811585302.4A CN201811585302A CN109656928A CN 109656928 A CN109656928 A CN 109656928A CN 201811585302 A CN201811585302 A CN 201811585302A CN 109656928 A CN109656928 A CN 109656928A
- Authority
- CN
- China
- Prior art keywords
- topology
- database
- related coefficient
- common
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供的表间关系获得方法及装置,方法包括:获得数据库的类型并基于该类型获得该数据库对应的系统表,根据系统表中的表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到数据库的物理主外键拓扑。获得数据库中各普通表的字段信息,并基于各字段信息得到各普通表之间的字段相关系数拓扑,获得数据库中各普通表的列数据,并基于各列数据得到各普通表之间的表间数据相关系数拓扑,根据物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到数据库的全库表间关系关联拓扑。通过上述方法,以便于针对不同类型的数据库建立数据库中的普通表之间的关联,无需依赖用户的行为且无需消耗过多的资源。
Description
技术领域
本发明涉及表间关联技术领域,具体而言,涉及一种表间关系获得方法及装置。
背景技术
随着大数据时代的发展,数据库的类型越来越多,数据关系灵活程度也越来越高,数据表之间的关联已经不局限于物理上的主外键关联,还有逻辑意义上的关系。因此,对于分析表间关系的工作提出了更高的要求。传统的表关联分析技术主要分为两大类,第一类是采用关系型数据库主外键关系获取技术,通过分析数据系统表可以获得表间主外键关联数据。第二类是采用数据库日志分析技术,通过分析数据的存取过程日志,可以分析客户常用表的关联关系。
发明人经研究发现,第一类采用关系型数据库进行表关联时不具备普适性,只适用于具有主外键关系的关系型数据库;第二类采用数据库日志分析技术需要长期开启数据库详细记录对于数据库有极大资源,且只分析日志过于依赖客户行为,因此,提供一种普适性强且对数据库资源较小的表关联方式是亟待解决的技术问题。
发明内容
有鉴于此,本发明的目的在于提供一种表间关系获得方法及装置,以有效解决上述技术问题。
为实现上述目的,本发明实施例采用如下技术方案:
本发明提供一种表间关系获得方法,所述方法包括:
获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表,其中,所述数据库中存储有多张普通表,所述系统表中包括各普通表的表外键;
根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑;
获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑;
获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑;
根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。
可选的,在上述表间关系获得方法中,获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表的步骤包括:
获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型;
根据所述数据库的类型获得所述数据库的系统表。
可选的,在上述表间关系获得方法中,获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑的步骤包括:
获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数;
根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。
可选的,在上述表间关系获得方法中,获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑的步骤包括:
获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据;
将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的表数据相关系数;
根据各所述普通表之间的表数据相关系数得到各所述普通表之间的表间数据关系拓扑。
可选的,在上述表间关系获得方法中,根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑的步骤包括:
根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑;
根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。
本发明还提供一种表间关系获得装置,所述装置包括:
系统表获得模块,用于获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表,其中,所述数据库中存储有多张普通表,所述系统表中包括各普通表的表外键;
物理拓扑获得模块,用于根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑;
字段拓扑获得模块,用于获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑;
数据拓扑获得模块,用于获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑;
表间关系获得模块,用于根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。
可选的,在上述表间关系获得装置中,所述系统表获得模块包括:
类型获得子模块,用于获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型;
系统表获得子模块,根据所述数据库的类型获得所述数据库的系统表。
可选的,在上述表间关系获得装置中,所述字段拓扑获得模块包括:
第一计算子模块,用于获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数;
第一拓扑获得子模块,用于根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。
可选的,在上述表间关系获得装置中,所述数据拓扑获得模块包括:
样本数据获得模块,用于获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据;
第二计算子模块,用于将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的列数据相关系数;
第二拓扑获得子模块,用于根据各所述普通表之间的列数据相关系数得到各所述普通表之间的表间数据相关系数拓扑。
可选的,在上述表间关系获得装置中,所述表间关系获得模块包括:
第三拓扑获得子模块,用于根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑;
表间关系获得子模块,用于根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。
本发明提供的一种表间关系获得方法及装置,方法包括获得数据库的类型并基于该类型获得该数据库对应的系统表,根据系统表中的表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到数据库的物理主外键拓扑。获得数据库中各普通表的字段信息,并基于各字段信息得到各普通表之间的字段相关系数拓扑,获得数据库中各普通表的列数据,并基于各列数据得到各普通表之间的表间数据相关系数拓扑,根据物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到数据库的全库表间关系关联拓扑。通过上述方法,以便于针对不同类型的数据库建立数据库中的普通表之间的关联,无需依赖用户的行为且无需消耗过多的资源。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
图1为本发明实施例提供的电子设备的结构框图。
图2为本发明实施例提供的表间关系获得方法的流程示意图。
图3为图2中步骤S110的流程示意图。
图4为图2中步骤S130的另一流程示意图。
图5为图2中步骤S140的流程示意图。
图6为图2中步骤S150的流程示意图。
图7为本发明实施例提供的表间关系获得装置的结构框图。
图标:10-电子设备;12-存储器;14-处理器;100-表间关系获得装置;110-系统表获得模块;120-物理拓扑获得模块;130-字段拓扑获得模块;140-数据拓扑获得模块;150-表间关系获得模块。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,除非另有明确的规定和限定,术语“设置”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
请参阅图1,本发明提供的一种电子设备10,该电子设备10可以是电脑、服务器或平板等设备。所述电子设备10包括:存储器12和处理器14。
所述存储器12与处理器14相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器12中存储有以软件或固件(Firmware)的形式存储于所述存储器12中的软件功能模块,所述处理器14通过运行存储在存储器12内的软件程序以及模块,如本发明实施例中的表间关系获得装置100,从而执行各种功能应用以及数据处理,即实现本发明实施例中的表间关系获得方法。
所述存储器12可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器12用于存储程序,所述处理器14在接收到执行指令后,执行所述程序。
所述处理器14可能是一种集成电路芯片,具有信号的处理能力。上述的处理器14可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等。还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
请参图2,本发明提供一种表间关系获得方法,所述表间关系获得方法可应用于上述的电子设备10,所述表间关系方法应用于所述电子设备10时实现步骤S110-S150五个步骤。
步骤S110:获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表。
其中,所述数据库的类型可以是,但不限于关系型数据库、层次式数据库和网络型数据库,且不同类型的数据库的系统表的存储方式通常为不同的。所述数据库中通常存储有多张普通表(例如,用户表)通常情况下,不同类型的数据库对应的系统表存储的普通表的地址信息和表结构信息通常为不同,因此,获得所述数据库的类型的方式可以是,基于所述普通表的地址信息或表结构信息得到对应的数据库的类型,也可以每个数据库中分别存储有标识该数据库的类型的标识信息。
请结合图3,在本实施例中,所述步骤S110包括:
步骤S112:获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型。
步骤S114:根据所述数据库的类型获得所述数据库的系统表。
需要说明的是,所述系统表通常存储有各所述普通表的表信息,例如,所述系统表的每一行分别对应存储一个所述普通表的信息。具体的,所述系统表存储有各所述普通表的表外键,以及各所述普通表的大小和特性等信息。
步骤S120:根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑。
具体的,所述表外键用于表征各普通表之间的关联关系,根据所述表外键即可得到存在表间关系的普通表,根据该存在表间关系的普通表即可得到所述数据库中各存在表间关系的普通表对应的拓扑,即所述数据库的物理主外键拓扑。
步骤S130:获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑。
其中,所述字段信息可以包括表名称和表类型。所述步骤S130可以是基于各所述普通表的表名称和/或表类型进行计算得到各所述普通表之间的字段关系拓扑。
请结合图4,具体的,在本实施例中,所述步骤S130包括:
步骤S132:获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数。
步骤S134:根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。
具体的,每个所述普通表分别对应一个字段信息,通过采用所述相似度计算的方式即可计算得到任意两个表之间的字段相关系数,通过该任意两个普通表之间的字段相关系数得到各所述普通表之间的字段相关系数拓扑。可以理解,当任意两个普通表之间的字段相关系数应大于一预设值时,才会建立该两个普通表之间的字段相关拓扑关系。
步骤S140:获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑。
具体的,所述普通表的列数据中通常包括文字信息或数据信息等,获得所述数据库中各普通表的列数据的方式具体为,获得所述数据库中所有的普通表的至少一列的列数据。步骤S140可以是根据各普通表的列数据中包括的文字信息和/或数据信息进行计算得到各所述普通表之间的表间数据相关系数拓扑。
请结合图5,在本实施例中,所述步骤S140包括:
步骤S142:获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据。
其中,获得样本数据的方式,可以是从所述普通表的列数据进行随机采样得到样本数据,也可以是将所述列数据中的重复数据去除后进行采样得到所述样本数据,在此不作具体限定,根据实际需求进行设置即可。
步骤S144:将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的列数据相关系数。
由于所述样本数据通常包括文字数据,通过将所述样本数据进行向量化处理并对向量化处理后的样本数据进行相似度计算得任意两个普通表发之间的列数据的相关系数。在本实施例中,步骤S144可以是采用机器学习的特征工程将所述样本数据进行向量化,并利用机器学习数据相似度算法对各样本数据进行计算得到各普通表之间的相关技术。
步骤S146:根据各所述普通表之间的列数据相关系数得到各所述普通表之间的表间数据相关系数拓扑。
可以理解,所述步骤S146中,可以是,当任意两个普通表之间的列数据相关系数应大于一设定值时,才会建立该两个普通表之间的表间拓扑关系,进而得到各所述普通表指之间的表间数据相关系数拓扑。
步骤S150:根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。
请结合图6,在本实施例中,步骤S150包括:
步骤S152:根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑。
其中,所述第一预设权重和第二预设权重的大小在此不作具体限定,根据实际需求进行设置即可。
步骤S154:根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。
可以理解,在本实施例中,为使获得的全库表件关系拓扑更准确,在本实施例中,所述步骤S154还可以是:按照有效性判别算法、表数据相关系数和字段相关系数对所述表间数据相关系数拓扑进行校验以得到逻辑主外键关联关系拓扑,并根据所述物理主外键拓扑和所述逻辑主外键关联关系拓扑得到所述数据库的全库表间关系关联拓扑。
通过上述方法,以实现基于对数据库中具有主外键关系的部分普通表采用直接分析数据系统表快速建立物理主外键拓扑,对于未建立主外键关系的普通表采用机器学习算法实现字段相似性识别算法和数据相似性识别算法得到字段相关系数拓扑以及表间数据相关系数拓扑,并基于物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑的全库表间关系拓扑,以便于针对不同类型的数据库建立数据库中的普通表之间的关联,无需依赖用户的行为且无需消耗过多的资源,且普适性强,具有极大的实用性。
请结合图7,在上述基础上,本发明还提供一种可应用于上述电子设备10的表间关系获得装置100,所述表间关系获得装置100包括系统表获得模块110、物理拓扑获得模块120、字段拓扑获得模块130、数据拓扑获得模块140以及表间关系获得模块150。
所述系统表获得模块110,用于获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表。其中,所述数据库中存储有多张普通表,所述系统表中包括各普通表的表外键。在本实施例中,所述系统表获得模块110可用于执行图2所示的步骤S110,关于所述系统表获得模块110的具体描述可以参照前文对步骤S110的描述。
所述物理拓扑获得模块120,用于根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑。在本实施例中,所述物理拓扑获得模块120可用于执行图2所示的步骤S120,关于所述物理拓扑获得模块120的具体描述可以参照前文对步骤S120的描述。
所述字段拓扑获得模块130,用于获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑。在本实施例中,所述字段拓扑获得模块130可用于执行图2所示的步骤S130,关于所述字段拓扑获得模块130的具体描述可以参照前文对步骤S130的描述。
所述数据拓扑获得模块140,用于获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑。在本实施例中,所述数据拓扑获得模块140可用于执行图2所示的步骤S140,关于所述数据拓扑获得模块140的具体描述可以参照前文对步骤S140的描述。
所述表间关系获得模块150,用于根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。在本实施例中,所述表间关系获得模块150可用于执行图2所示的步骤S150,关于所述表间关系获得模块150的具体描述可以参照前文对步骤S150的描述。
在本实施例中,所述系统表获得模块110包括:类型获得子模块和系统表获得子模块。
所述类型获得子模块,用于获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型。在本实施例中,所述类型获得子模块可用于执行图3所示的步骤S112,关于所述类型获得子模块的具体描述可以参照前文对步骤S112的描述。
所述系统表获得子模块,根据所述数据库的类型获得所述数据库的系统表。在本实施例中,所述系统表获得子模块可用于执行图3所示的步骤S114,关于所述系统表获得子模块的具体描述可以参照前文对步骤S114的描述。
在本实施例中,所述字段拓扑获得模块130包括:第一计算子模块和第一拓扑获得子模块。
所述第一计算子模块,用于获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数。在本实施例中,所述第一计算子模块可用于执行图4所示的步骤S132,关于所述第一计算子模块的具体描述可以参照前文对步骤S132的描述。
所述第一拓扑获得子模块,用于根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。在本实施例中,所述第一拓扑获得子模块可用于执行图4所示的步骤S134,关于所述第一拓扑获得子模块的具体描述可以参照前文对步骤S134的描述。
在本实施例中,所述数据拓扑获得模块140包括样本数据获得模块、第二计算子模块以及第二拓扑获得子模块。
所述样本数据获得模块,用于获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据。在本实施例中,所述样本数据获得模块可用于执行图5所示的步骤S142,关于所述样本数据获得模块的具体描述可以参照前文对步骤S142的描述。
所述第二计算子模块,用于将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的列数据相关系数。在本实施例中,所述第二计算子模块可用于执行图5所示的步骤S144,关于所述第二计算子模块的具体描述可以参照前文对步骤S144的描述。
所述第二拓扑获得子模块,用于根据各所述普通表之间的列数据相关系数得到各所述普通表之间的表间数据相关系数拓扑。在本实施例中,所述第二拓扑获得子模块可用于执行图5所示的步骤S146,关于所述第二拓扑获得子模块的具体描述可以参照前文对步骤S146的描述。
在本实施例中,所述表间关系获得模块150包括第三拓扑获得子模块和表间关系获得子模块。
所述第三拓扑获得子模块,用于根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑。在本实施例中,所述第二拓扑获得子模块可用于执行图6所示的步骤S152,关于所述第三拓扑获得子模块的具体描述可以参照前文对步骤S152的描述。
所述表间关系获得子模块,用于根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。在本实施例中,所述表间关系获得子模块可用于执行图6所示的步骤S154,关于所述表间关系获得子模块的具体描述可以参照前文对步骤S154的描述。
综上所述,本发明提供的表间关系获得方法及装置,通过获得数据库的类型并基于该类型获得该数据库对应的系统表,根据系统表中的表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到数据库的物理主外键拓扑。获得各普通表的字段信息,并基于各字段信息得到各普通表之间的字段相关系数拓扑,获得各普通表的列数据,并基于各列数据得到各普通表之间的表间数据相关系数拓扑,根据物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到数据库的全库表间关系关联拓扑。通过上述方法,以便于针对不同类型的数据库建立数据库中的各普通表之间的关联,无需依赖用户的行为且无需消耗过多的资源。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种表间关系获得方法,其特征在于,所述方法包括:
获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表,其中,所述数据库中存储有多张普通表,所述系统表中包括各普通表的表外键;
根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑;
获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑;
获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑;
根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。
2.根据权利要求1所述的表间关系获得方法,其特征在于,获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表的步骤包括:
获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型;
根据所述数据库的类型获得所述数据库的系统表。
3.根据权利要求1所述的表间关系获得方法,其特征在于,获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑的步骤包括:
获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数;
根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。
4.根据权利要求1所述的表间关系获得方法,其特征在于,获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑的步骤包括:
获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据;
将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的表数据相关系数;
根据各所述普通表之间的表数据相关系数得到各所述普通表之间的表间数据关系拓扑。
5.根据权利要求1所述的表间关系获得方法,其特征在于,根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑的步骤包括:
根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑;
根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。
6.一种表间关系获得装置,其特征在于,所述装置包括:
系统表获得模块,用于获得数据库的类型并基于所述数据库的类型获得该数据库对应的系统表,其中,所述数据库中存储有多张普通表,所述系统表中包括各普通表的表外键;
物理拓扑获得模块,用于根据所述表外键得到存在表间关系的普通表,并基于该存在表间关系的普通表得到所述数据库的物理主外键拓扑;
字段拓扑获得模块,用于获得所述数据库中各普通表的字段信息,并基于各所述字段信息得到各所述普通表之间的字段相关系数拓扑;
数据拓扑获得模块,用于获得所述数据库中各普通表的列数据,并基于各所述列数据得到各所述普通表之间的表间数据相关系数拓扑;
表间关系获得模块,用于根据所述物理主外键拓扑、字段相关系数拓扑以及表间数据相关系数拓扑得到所述数据库的全库表间关系关联拓扑。
7.根据权利要求6所述的表间关系获得装置,其特征在于,所述系统表获得模块包括:
类型获得子模块,用于获取数据库中存储的普通表的地址信息,并基于该地址信息得到所述数据库的类型;
系统表获得子模块,根据所述数据库的类型获得所述数据库的系统表。
8.根据权利要求6所述的表间关系获得装置,其特征在于,所述字段拓扑获得模块包括:
第一计算子模块,用于获得所述数据库中各普通表的字段信息,并对各所述字段信息采用相似度算法进行计算得到各所述普通表之间的字段相关系数;
第一拓扑获得子模块,用于根据所述字段相关系数得到各所述普通表之间的字段相关系数拓扑。
9.根据权利要求6所述的表间关系获得装置,其特征在于,所述数据拓扑获得模块包括:
样本数据获得模块,用于获得所述数据库中各普通表的列数据,并从该列数据中获得样本数据;
第二计算子模块,用于将所述样本数据进行向量化处理,并基于相似度算法对各所述普通表对应的向量处理后的样本数据进行计算得到各所述普通表之间的列数据相关系数;
第二拓扑获得子模块,用于根据各所述普通表之间的列数据相关系数得到各所述普通表之间的表间数据相关系数拓扑。
10.根据权利要求6所述的表间关系获得装置,其特征在于,所述表间关系获得模块包括:
第三拓扑获得子模块,用于根据所述字段相关系数拓扑、表间数据相关系数、所述字段相关系数拓扑对应的第一预设权重以及所述表间数据相关系数对应的第二预设权重得到表间关系相关系数拓扑;
表间关系获得子模块,用于根据所述表间关系相关系数拓扑和所述物理主外键拓扑得到所述数据库的全库表间关系关联拓扑。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811585302.4A CN109656928B (zh) | 2018-12-24 | 2018-12-24 | 表间关系获得方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811585302.4A CN109656928B (zh) | 2018-12-24 | 2018-12-24 | 表间关系获得方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109656928A true CN109656928A (zh) | 2019-04-19 |
CN109656928B CN109656928B (zh) | 2020-09-01 |
Family
ID=66116563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811585302.4A Active CN109656928B (zh) | 2018-12-24 | 2018-12-24 | 表间关系获得方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656928B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112115138A (zh) * | 2020-08-19 | 2020-12-22 | 第四范式(北京)技术有限公司 | 确定数据表之间关联关系的方法、装置及设备 |
CN112214509A (zh) * | 2019-07-12 | 2021-01-12 | 深圳市优必选科技股份有限公司 | 数据检索方法、系统、终端设备及存储介质 |
CN115292508A (zh) * | 2022-06-29 | 2022-11-04 | 江苏昆山农村商业银行股份有限公司 | 一种基于表数据的知识图谱构建方法和系统 |
CN116226686A (zh) * | 2023-05-08 | 2023-06-06 | 南方电网数字电网研究院有限公司 | 一种表格相似性分析方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060123009A1 (en) * | 2004-12-07 | 2006-06-08 | Microsoft Corporation | Flexible database generators |
CN101067814A (zh) * | 2007-05-10 | 2007-11-07 | 浪潮集团山东通用软件有限公司 | 数据访问层Xml格式数据与关系数据间的映射转换方法 |
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN102004804A (zh) * | 2010-12-31 | 2011-04-06 | 西北大学 | 一种范围型数据的存储及查询方法 |
CN108920592A (zh) * | 2018-06-26 | 2018-11-30 | 杭州骑轻尘信息技术有限公司 | 数据库字段关联方法及装置 |
-
2018
- 2018-12-24 CN CN201811585302.4A patent/CN109656928B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060123009A1 (en) * | 2004-12-07 | 2006-06-08 | Microsoft Corporation | Flexible database generators |
CN101197876A (zh) * | 2006-12-06 | 2008-06-11 | 中兴通讯股份有限公司 | 一种对消息类业务数据进行多维分析的方法和系统 |
CN101067814A (zh) * | 2007-05-10 | 2007-11-07 | 浪潮集团山东通用软件有限公司 | 数据访问层Xml格式数据与关系数据间的映射转换方法 |
CN102004804A (zh) * | 2010-12-31 | 2011-04-06 | 西北大学 | 一种范围型数据的存储及查询方法 |
CN108920592A (zh) * | 2018-06-26 | 2018-11-30 | 杭州骑轻尘信息技术有限公司 | 数据库字段关联方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112214509A (zh) * | 2019-07-12 | 2021-01-12 | 深圳市优必选科技股份有限公司 | 数据检索方法、系统、终端设备及存储介质 |
CN112115138A (zh) * | 2020-08-19 | 2020-12-22 | 第四范式(北京)技术有限公司 | 确定数据表之间关联关系的方法、装置及设备 |
CN115292508A (zh) * | 2022-06-29 | 2022-11-04 | 江苏昆山农村商业银行股份有限公司 | 一种基于表数据的知识图谱构建方法和系统 |
CN115292508B (zh) * | 2022-06-29 | 2024-02-02 | 江苏昆山农村商业银行股份有限公司 | 一种基于表数据的知识图谱构建方法和系统 |
CN116226686A (zh) * | 2023-05-08 | 2023-06-06 | 南方电网数字电网研究院有限公司 | 一种表格相似性分析方法、装置、设备和存储介质 |
CN116226686B (zh) * | 2023-05-08 | 2023-08-18 | 南方电网数字电网研究院有限公司 | 一种表格相似性分析方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109656928B (zh) | 2020-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109656928A (zh) | 表间关系获得方法及装置 | |
TWI718643B (zh) | 異常群體識別方法及裝置 | |
CN109347787B (zh) | 一种身份信息的识别方法及装置 | |
WO2019128526A1 (zh) | 一种训练风控模型和风控的方法、装置及设备 | |
CN108229314B (zh) | 目标人物的搜索方法、装置和电子设备 | |
TWI738011B (zh) | 用戶身分確定方法、裝置及電子設備 | |
CN108492124A (zh) | 店铺信息推荐方法、装置及客户端 | |
CN108921424B (zh) | 一种电力数据异常检测方法、装置、设备及可读存储介质 | |
CN111090807B (zh) | 一种基于知识图谱的用户识别方法及装置 | |
CN109344262A (zh) | 知识体系的建立方法、装置及存储介质 | |
CN109086975A (zh) | 一种交易风险的识别方法和装置 | |
Fakheri et al. | Framework for image retrieval using machine learning and statistical similarity matching techniques | |
CN104598632A (zh) | 热点事件检测方法和装置 | |
CN110929525B (zh) | 一种网贷风险行为分析检测方法、装置、设备和存储介质 | |
CN111814990A (zh) | 阈值确定方法、系统、存储介质及终端 | |
CN108920592A (zh) | 数据库字段关联方法及装置 | |
Zeileis et al. | A toolbox of permutation tests for structural change | |
CN106997350A (zh) | 一种数据处理的方法及装置 | |
WO2015074493A1 (zh) | 一种低频点击的过滤方法、装置、计算机程序以及计算机可读介质 | |
CN115563477B (zh) | 谐波数据识别方法、装置、计算机设备和存储介质 | |
CN116821087A (zh) | 输电线路故障数据库构建方法、装置、终端及存储介质 | |
CN116599743A (zh) | 4a异常绕行检测方法、装置、电子设备及存储介质 | |
CN110427558B (zh) | 资源处理事件的推送方法及装置 | |
CN108256465A (zh) | 电能质量扰动事件识别方法及装置 | |
CN109657160B (zh) | 基于随机游走访问频数的入度信息估计方法及系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |