CN106055652A - 一种基于模式和实例的数据库匹配方法及系统 - Google Patents
一种基于模式和实例的数据库匹配方法及系统 Download PDFInfo
- Publication number
- CN106055652A CN106055652A CN201610380637.7A CN201610380637A CN106055652A CN 106055652 A CN106055652 A CN 106055652A CN 201610380637 A CN201610380637 A CN 201610380637A CN 106055652 A CN106055652 A CN 106055652A
- Authority
- CN
- China
- Prior art keywords
- pattern
- similarity
- file
- source file
- module
- 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
Links
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/21—Design, administration or maintenance of databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于模式和实例的数据库匹配方法及其系统,所述方法包括:导入源文件和目标文件;对文件进行解析及预处理;计算相似度;构建相似度矩阵,得到匹配结果;合并匹配结果;显示匹配结果。所述系统包括:预处理模块、相似度计算模块、模式生成模块以及文本生成模块。本发明提供的基于模式和实例的数据库匹配方法及系统,主要用于进行数据库表的模式匹配,方便进行数据迁移,能够得到源表和目标表之间的映射关系,在模式信息较少或不明确时,此方法结合分析了实例信息,能更准确地得到匹配结果;同时,通过遗传算法进行预处理,减少了数据集范围。
Description
技术领域
本发明涉及计算机领域,具体的,涉及一种基于模式和实例的数据库匹配方法及系统。
背景技术
以往,在为了提高处理速度而在通信网络中配置了多个数据库装置的情况下,有时存在以下问题:由于数据库装置的故障等而不能在数据库装置之间正常发送接收控制信号,致使产生在数据库装置中存储的数据之间不匹配。
模式匹配在许多应用中都起着关键作用,如数据仓库中的数据抽取过程需要将数据源的数据按仓库的格式转换;电子商务信息交换的处理中的异构信息的映射;以及数据集成中全局视图的构建。
模式匹配的目标是找出异构模式中实体之间的映射关系,目前模式匹配主要有基于模式内部信息的模式匹配和基于大规模数据以及背景知识的模式匹配等两类。基于待匹配模式内部信息的模式匹配的优点在于整合模式内聚信息,其局限性在于模式自身语义的不完备;基于大规模数据以及背景知识的模式匹配方法充分利用了数据实例或以往的匹配结果,但往往不具备通用性,并且学习数据较难获取。
发明内容
为解决现有技术的不足,提供一种能得到更准确的匹配结果的模式匹配方法,本发明提供了一种基于模式和实例的数据库匹配方法,包括如下步骤:
S1:导入源文件和目标文件;
S2:对源文件和目标文件进行解析及预处理;
S3:计算源文件和目标文件的相似度;
S4:根据相似度构建相似度矩阵,得到匹配结果;
S5:合并匹配结果;
S6:显示匹配结果。
其中,前述步骤S1中,导入的源文件和目标文件的格式为.xdr。
其中,前述步骤S2具体包括如下步骤:
S21:将解析好的数据保存到class中;
S22:对源文件和目标文件进行预处理,得到关于源文件和目标文件对应的图;
S23:读取源文件和目标文件的元素信息;
S24:根据步骤S23中的元素信息构造出树;
S25:将步骤S24中构造出的树显示在软件界面上。
其中,前述步骤S21中,所述class包括Manager和Controller。其中,Class
代表JAVA的类,Manager和Controller分别是两个类的名称。其中,前述
步骤S22中,通过遗传算法对源文件和目标文件进行预处理。其中,前
述步骤S23中,所述元素信息包括路径及叶子节点。
其中,前述步骤S3中,通过三种方法计算相似度:Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法。
其中,前述步骤S4中,通过组合步骤S3中三种算法计算出的相似度得到相似度矩阵。
本发明另外提供了一种基于模式和实例的数据库匹配系统,包括:
预处理模块,用于对导入的源文件和目标文件进行解析及预处理;
相似度计算模块,与预处理模块连接,用于计算源文件和目标文件的相似度;
模式生成模块,与相似度计算模块连接,用于组合相似度计算模块计算出的相似度,从而得到相似度矩阵及匹配结果;
文本生成模块,与模式生成模块连接,用于输出文本文件以方便查看匹配结果及相似度。
其中,前述相似度计算模块通过Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法计算相似度。
其中,前述预处理模块主要通过遗传算法对导入的源文件和目标文件进行解析及预处理。
本发明提供的基于模式和实例的数据库匹配方法及系统,主要用于进行数据库表的模式匹配,方便进行数据迁移,能够得到源表和目标表之间的映射关系,在模式信息较少或不明确时,此方法结合分析了实例信息,能更准确地得到匹配结果;同时,通过遗传算法进行预处理,减少了数据集范围。
附图说明
图1:本发明的基于模式和实例的数据库匹配方法的流程图;
图2:本发明的基于模式和实例的数据库匹配系统的结构示意图;
图3:本发明的一个相似度矩阵图;
图4:本发明所适用的复制情景的情景示意图;
图5:本发明所适用的合并情景的情景示意图;
图6:本发明所适用的分类情景的情景示意图;
图7:本发明所适用的嵌套情景的情景示意图。
具体实施方式
为了对本发明的技术方案及有益效果有更进一步的了解,下面配合附图详细说明本发明的技术方案及其产生的有益效果。
图1为本发明的基于模式和实例的数据库匹配方法的流程图,如图1所示,本发明提供了一种基于模式和实例的数据库匹配方法,包括如下步骤:
S1:导入源文件和目标文件;
S2:对源文件和目标文件进行解析及预处理;
S3:计算源文件和目标文件的相似度,在计算源文件和目标文件的相似度时,主要是计算相应的每条路径以及叶子节点等信息的相似度;如果实例信息差别很大,那么源文件和目标文件对应的项的相似度很低;
S4:根据相似度构建相似度矩阵,得到匹配结果;图示的迭代过程即,首先使用一种相似度算法计算出一种相似度后,回去再使用另一种算法计算的过程。
S5:合并匹配结果;
S6:显示匹配结果。
较优的,所述步骤S1中,导入的源文件和目标文件的格式为.xdr。
xdr是SunSoft的开放网络计算环境的一种功能。xdr提供了一种与体系结构无关的表示数据,解决了数据字节排序的差异、数据字节大小、数据表示和数据对准的方式。使用xdr的应用程序,可以在异构硬件系统上交换数据。
xdr架构如下,例如
较优的,所述步骤S2具体包括如下步骤:
S21:将解析好的数据保存到class中;较优的,所述class包括Manager和Controller;
S22:对源文件和目标文件进行预处理,得到关于源文件和目标文件对应的图;其中,每条路径的最后一个节点为实例信息;
在实际操作中,可通过遗传算法对源文件和目标文件进行预处理,因此能够减少数据集范围;
S23:读取源文件和目标文件的元素信息;具体的,所述元素信息包括路径及叶子节点;
S24:根据步骤S23中的元素信息构造出树;
S25:将步骤S24中构造出的树显示在软件界面上。
较优的,所述步骤S3中,通过三种方法计算相似度:Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法。
较优的,所述步骤S4中,通过组合步骤S3中三种算法计算出的相似度得到相似度矩阵。
所述步骤S5中,匹配结果例如显示如下:
图2为本发明的基于模式和实例的数据库匹配系统的结构示意图,如图2所示,本发明另外提供了一种基于模式和实例的数据库匹配系统,包括:
预处理模块,用于对导入的源文件和目标文件进行解析及预处理;
相似度计算模块,与预处理模块连接,用于计算源文件和目标文件的相似度;
模式生成模块,与相似度计算模块连接,用于组合相似度计算模块计算出的相似度,从而得到相似度矩阵及匹配结果,利用相似矩阵得到最终匹配的映射;
文本生成模块,与模式生成模块连接,用于输出文本文件以方便查看匹配结果及各项相似度评分。
具体的,预处理模块可实现上述步骤S1和步骤S2的操作;相似度计算模块可实现上述步骤S3的操作;模式生成模块可实现上述步骤S4的操作;文本生成模块可实现上述步骤S5及S6的操作。
较优的,所述预处理模块主要通过遗传算法对导入的源文件和目标文件进行解析及预处理。
预处理模块读取导入的源文件和目标文件的元素信息,然后构造出树,并在软件界面上显示,并将解析后的文件保存到SaveToGraphThread类中。
较优的,所述相似度计算模块通过Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法计算相似度。
具体的,所述三种算法的具体计算公式及方法如下:
1、Jaccard系数算法公式
元素的取值可以是实数。又称为Tanimoto系数,用EJ来表示,
计算方式如下:
EJ(A,B)=(A*B)/(||A||^2+||B||^2-A*B)
其中,A、B分别是两个向量,集合中每一个元素都表示向量中的一个维度,在每个维度上,取值通常是0到1之间的值,A*B表示向量的乘积,||A||^2表示向量的模,即||A||^2=sqrt(a1^2+a2^2+a3^2+......)。
J accard distance(A,B)=1-Jaccard(A,B)
2、Levenshtein算法
编辑操作包含删除,增加,一比一的替换。
取两个字符串的长度中的最大值,用编辑操作/字符串长度最大值,相似度为1-(编辑操作/字符串长度最大值)
例如chane和chakre一个操作,长度为6,所以相似度为1-2/6=0.666。
3、The Jaro–Winkler
The Jaro Winker距离是由Winkler首先提出的,它是一种计算字符串之间相似度的算法。Jaro–Winkler距离算法最后得到的评分越高就表示相似度更高
其中,s1,s2是两个要比对的字符串,Dj为最后得分,m是匹配的字符数,t是换位的数目
匹配窗口计算公式:
Dw=Dj+L*P*(1-Dj)//公式三
Dw为jaro winlker距离Dj为公式一,P为前缀范围前缀相同部分长度为L。
具体的,在相似度计算模块中得到了各属性对之前的相似度评分,在模式生成模块中利用相似度矩阵来储存相似度。
图3为本发明的一个相似度矩阵图(利用数组存放),如图3所示,相似度取上一个模块中三个算法的加权平均,提高容错率。在生成映射前输定阈值为将矩阵中元素值小于阈值的元素设为0。相似度大于阈值的匹配对,我们认为它为匹配项的可能性较大。确定匹配项后将在工具上对匹配项进行连线。
图4-图7分别为本发明所适用的四种情景的情景示意图,如图4所示,为本发明所适用的复制情景的情景示意图,复制情景是模式匹配中最普遍的一种场景,它将源模式中的属性直接复制到目标模式中。
如图5所示,为本发明所适用的合并情景的情景示意图,合并场景也是模式匹配中比较熟悉的一种场景,它将源模式中多个关系表中的几个类型差不多的属性合并到目标模式中的相关属性中。
如图6所示,为本发明所适用的分类情景的情景示意图,分类情景是合并场景的一个反向过程,它指的是源模式中一个关系表的相关属性元素分类到到目标模式中多个关系表的属性元素中。
如图7所示,为本发明所适用的嵌套情景的情景示意图,嵌套情景是模式匹配中很常见的一种情景,意思是在源模式中具有主外键关系的多个关系表的元素映射到目标模式中同一个模式元素。如图7所示,Article关系表的AuthorID字段与Author表的ID字段是外键关系,在匹配过程中需要将其映射到目标模式的Author表的ID中。
综上,本发明提供的基于模式和实例的数据库匹配方法及系统,主要用于进行数据库表的模式匹配,方便进行数据迁移,能够得到源表和目标表之间的映射关系,在模式信息较少或不明确时,此方法结合分析了实例信息,能更准确地得到匹配结果;同时,通过遗传算法进行预处理,减少了数据集范围。
虽然本发明已利用上述较佳实施例进行说明,然其并非用以限定本发明的保护范围,任何本领域技术人员在不脱离本发明的精神和范围之内,相对上述实施例进行各种变动与修改仍属本发明所保护的范围,因此本发明的保护范围以权利要求书所界定的为准。
Claims (11)
1.一种基于模式和实例的数据库匹配方法,其特征在于,包括如下步骤:
S1:导入源文件和目标文件;
S2:对源文件和目标文件进行解析及预处理;
S3:计算源文件和目标文件的相似度;
S4:根据相似度构建相似度矩阵,得到匹配结果;
S5:合并匹配结果;
S6:显示匹配结果。
2.如权利要求1所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S1中,导入的源文件和目标文件的格式为.xdr。
3.如权利要求1所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S2具体包括如下步骤:
S21:将解析好的数据保存到class中;
S22:对源文件和目标文件进行预处理,得到关于源文件和目标文件对应的图;
S23:读取源文件和目标文件的元素信息;
S24:根据步骤S23中的元素信息构造出树;
S25:将步骤S24中构造出的树显示在软件界面上。
4.如权利要求3所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S21中,所述class包括Manager和Controller。
5.如权利要求3所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S22中,通过遗传算法对源文件和目标文件进行预处理。
6.如权利要求3所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S23中,所述元素信息包括路径及叶子节点。
7.如权利要求1所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S3中,通过三种方法计算相似度:Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法。
8.如权利要求7所述的基于模式和实例的数据库匹配方法,其特征在于,所述步骤S4中,通过组合步骤S3中三种算法计算出的相似度得到相似度矩阵。
9.一种基于模式和实例的数据库匹配系统,其特征在于,包括:
预处理模块,用于对导入的源文件和目标文件进行解析及预处理;
相似度计算模块,与预处理模块连接,用于计算源文件和目标文件的相似度;
模式生成模块,与相似度计算模块连接,用于组合相似度计算模块计算出的相似度,从而得到相似度矩阵及匹配结果;
文本生成模块,与模式生成模块连接,用于输出文本文件以方便查看匹配结果及相似度。
10.如权利要求8所述的基于模式和实例的数据库匹配系统,其特征在于,所述相似度计算模块通过Jaccard系数算法、Levenshtein算法以及Jaro-Winkler算法计算相似度。
11.如权利要求8所述的基于模式和实例的数据库匹配系统,其特征在于,所述预处理模块主要通过遗传算法对导入的源文件和目标文件进行解析及预处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610380637.7A CN106055652A (zh) | 2016-06-01 | 2016-06-01 | 一种基于模式和实例的数据库匹配方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610380637.7A CN106055652A (zh) | 2016-06-01 | 2016-06-01 | 一种基于模式和实例的数据库匹配方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106055652A true CN106055652A (zh) | 2016-10-26 |
Family
ID=57172525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610380637.7A Pending CN106055652A (zh) | 2016-06-01 | 2016-06-01 | 一种基于模式和实例的数据库匹配方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106055652A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960048A (zh) * | 2017-03-30 | 2017-07-18 | 张伟 | 一种基于Java的数据库与实体类自动映射算法 |
CN107844560A (zh) * | 2017-10-30 | 2018-03-27 | 北京锐安科技有限公司 | 一种数据接入的方法、装置、计算机设备和可读存储介质 |
CN110827931A (zh) * | 2020-01-13 | 2020-02-21 | 四川大学华西医院 | 一种临床术语的管理方法及装置、可读存储介质 |
CN111190860A (zh) * | 2019-12-31 | 2020-05-22 | 中国银行股份有限公司 | 一种数据库的配置方法和装置 |
CN112749566A (zh) * | 2019-10-31 | 2021-05-04 | 兰雨晴 | 一种面向英文写作辅助的语义匹配方法及装置 |
CN114579937A (zh) * | 2022-05-09 | 2022-06-03 | 北京航天驭星科技有限公司 | Api安全分析与主动防御方法、系统、电子设备及存储介质 |
CN117827214A (zh) * | 2023-12-25 | 2024-04-05 | 慧之安信息技术股份有限公司 | 一种算法管理平台中的算法拓展方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231703A (zh) * | 2008-02-28 | 2008-07-30 | 上海交通大学 | 基于相关向量机和提升学习的多人脸跟踪方法 |
CN101329765A (zh) * | 2008-07-31 | 2008-12-24 | 上海交通大学 | 多摄像机目标匹配特征融合方法 |
CN101499268A (zh) * | 2008-02-01 | 2009-08-05 | 三星电子株式会社 | 自动生成音乐结构性界面信息的设备和方法及检索系统 |
CN102298582A (zh) * | 2010-06-23 | 2011-12-28 | 商业对象软件有限公司 | 数据搜索和匹配方法和系统 |
CN102646099A (zh) * | 2011-02-21 | 2012-08-22 | 株式会社理光 | 模式匹配系统、模式映射系统及方法 |
-
2016
- 2016-06-01 CN CN201610380637.7A patent/CN106055652A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499268A (zh) * | 2008-02-01 | 2009-08-05 | 三星电子株式会社 | 自动生成音乐结构性界面信息的设备和方法及检索系统 |
CN101231703A (zh) * | 2008-02-28 | 2008-07-30 | 上海交通大学 | 基于相关向量机和提升学习的多人脸跟踪方法 |
CN101329765A (zh) * | 2008-07-31 | 2008-12-24 | 上海交通大学 | 多摄像机目标匹配特征融合方法 |
CN102298582A (zh) * | 2010-06-23 | 2011-12-28 | 商业对象软件有限公司 | 数据搜索和匹配方法和系统 |
CN102646099A (zh) * | 2011-02-21 | 2012-08-22 | 株式会社理光 | 模式匹配系统、模式映射系统及方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960048A (zh) * | 2017-03-30 | 2017-07-18 | 张伟 | 一种基于Java的数据库与实体类自动映射算法 |
CN106960048B (zh) * | 2017-03-30 | 2021-10-01 | 深圳市来玩科技有限公司 | 一种基于Java的数据库与实体类自动映射方法 |
CN107844560A (zh) * | 2017-10-30 | 2018-03-27 | 北京锐安科技有限公司 | 一种数据接入的方法、装置、计算机设备和可读存储介质 |
CN112749566A (zh) * | 2019-10-31 | 2021-05-04 | 兰雨晴 | 一种面向英文写作辅助的语义匹配方法及装置 |
CN112749566B (zh) * | 2019-10-31 | 2024-05-03 | 兰雨晴 | 一种面向英文写作辅助的语义匹配方法及装置 |
CN111190860A (zh) * | 2019-12-31 | 2020-05-22 | 中国银行股份有限公司 | 一种数据库的配置方法和装置 |
CN111190860B (zh) * | 2019-12-31 | 2023-04-25 | 中国银行股份有限公司 | 一种数据库的配置方法和装置 |
CN110827931A (zh) * | 2020-01-13 | 2020-02-21 | 四川大学华西医院 | 一种临床术语的管理方法及装置、可读存储介质 |
CN114579937A (zh) * | 2022-05-09 | 2022-06-03 | 北京航天驭星科技有限公司 | Api安全分析与主动防御方法、系统、电子设备及存储介质 |
CN117827214A (zh) * | 2023-12-25 | 2024-04-05 | 慧之安信息技术股份有限公司 | 一种算法管理平台中的算法拓展方法及系统 |
CN117827214B (zh) * | 2023-12-25 | 2024-06-11 | 慧之安信息技术股份有限公司 | 一种算法管理平台中的算法拓展方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106055652A (zh) | 一种基于模式和实例的数据库匹配方法及系统 | |
WO2022126971A1 (zh) | 基于密度的文本聚类方法、装置、设备及存储介质 | |
WO2021083239A1 (zh) | 一种进行图数据查询的方法、装置、设备及存储介质 | |
WO2017137000A1 (zh) | 对描述同一实体的不同实例进行合并的方法、装置及设备 | |
CN105468605B (zh) | 一种实体信息图谱生成方法及装置 | |
CN101694668B (zh) | 网页结构相似性确定方法及装置 | |
CN108170755A (zh) | 基于三元组深度网络的跨模态哈希检索方法 | |
CN106933833B (zh) | 一种基于空间索引技术的位置信息快速查询方法 | |
CN105518658A (zh) | 用于将数据记录分组的设备、系统以及方法 | |
CN109902144B (zh) | 一种基于改进wmd算法的实体对齐方法 | |
Gao et al. | Democratic diffusion aggregation for image retrieval | |
CN109918506A (zh) | 一种文本分类方法及装置 | |
CN104112005B (zh) | 分布式海量指纹识别方法 | |
CN108399268B (zh) | 一种基于博弈论的增量式异构图聚类方法 | |
CN109376261A (zh) | 基于中级文本语义增强空间的模态独立检索方法和系统 | |
CN112732932A (zh) | 一种基于知识图谱嵌入的用户实体群组推荐方法 | |
CN114566233A (zh) | 分子筛选的方法、装置、电子设备及存储介质 | |
CN109472282A (zh) | 一种基于极少训练样本的深度图像哈希方法 | |
Bi et al. | MM-GNN: Mix-moment graph neural network towards modeling neighborhood feature distribution | |
CN115618097A (zh) | 面向先验数据不充分多社交媒体平台知识图谱的实体对齐方法 | |
CN111241326A (zh) | 基于注意力金字塔图网络的图像视觉关系指代定位方法 | |
CN111680498A (zh) | 实体消歧方法、装置、存储介质及计算机设备 | |
Liang et al. | Cross-media semantic correlation learning based on deep hash network and semantic expansion for social network cross-media search | |
Chen et al. | DCR‐Net: Dilated convolutional residual network for fashion image retrieval | |
CN101916260A (zh) | 一种灾害本体和关系数据库间语义映射构建的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161026 |