CN108573010B - 关联异构系统同义数据的方法、装置、电子设备及介质 - Google Patents
关联异构系统同义数据的方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN108573010B CN108573010B CN201710739310.9A CN201710739310A CN108573010B CN 108573010 B CN108573010 B CN 108573010B CN 201710739310 A CN201710739310 A CN 201710739310A CN 108573010 B CN108573010 B CN 108573010B
- Authority
- CN
- China
- Prior art keywords
- attribute
- heterogeneous system
- target
- item
- positions
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种关联异构系统同义数据的方法、装置、电子设备及介质,其中方法包括:在第一异构系统中,判断是否有第一数据库表的第一位置,将第一位置所在的第一数据库的表项确定为第一目标属性项,确定第一目标属性项位置;在第二异构系统中,判断是否有第二数据库表的第二位置,将第二位置所在的第二数据库表的表项确定为第二目标属性项,确定第二目标属性项位置;将第一目标属性项位置与第二目标属性项位置建立关联;将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据。本发明实现了快速准确的识别并关联同义数据。
Description
技术领域
本发明涉及计算机信息处理技术领域,特别是涉及一种关联异构系统同义数据的方法、装置、电子设备及介质。
背景技术
完成相同或相近功能/业务的软件系统往往存在多种实现形式,这些软件系统形成同业系统。同业系统在完成上述相同或相近功能/业务时有三层含义:执行相同/相近的业务操作、遵循行业的有关业务标准(规范);具备相同或相似的业务操作界面来录入/产生业务数据;业务系统输入/输出的业务数据相同或高度相近。同业系统中存在结构不同或结构相近的多个独立系统,将这样的多个独立系统间互称为异构系统。多个异构系统中存在完全等价表达同一业务对象或其属性的数据,称这样的数据为异构系统的同义数据。
从面向个人消费者的同业系统到面向企业的同业系统,这些同业系统中存在大量的异构系统对应的软件系统。其原因主要是同一细分领域存在多家互相竞争的企业,每个企业有自己独立的软件系统。例如我国为医院提供的医院信息化系统的厂商,据不完全统计就有130多家,其中全国性的大型厂商就有10多家,每个厂商都有为医院提供信息化管理的不同的软件系统。单一软件系统的市场占有率都不高,市场高度分散。出现这样的情况产生的结果从行业来看,不同厂商的软件系统,甚至同一厂商的多个软件系统的不同部署方式间,数据都无法打通和连接,数据形成了非常多的碎片,即“数据孤岛”。这为行业的融合发展、业务联动、大数据应用,以及监管都带来了很大的阻碍和困难。要解决这些问题,关键在于打通数据,连接“数据孤岛”上的数据,打通数据实现数据连接的关键又在于如何将不同异构系统中的同义数据进行识别和关联。
现有技术中,有人工比对的方式将异构系统中的同义数据进行识别和关联。具体为,将同业系统的两个异构系统A、B的厂商提供的数据项说明文档,采用人工阅读理解的方式对说明文档中的数据项同义数据进行识别、比对和关联。另外,还有制定标准规范,统一转换的方式将异构系统中的同义数据进行识别和关联。该方法是由国家主管部门或行业组织,制定一个数据标准规范,将同业系统的两个异构系统A、B的全体厂商均按该标准进行数据格式转换,以规范的数据格式来交换。
现有技术将异构系统的同义数据进行识别和关联的方法中,由于同业系统中的异构系统复杂且数据项非常多,所以使用人工比对的方式耗时耗力且容易出错,转换效率低。另外,使用统一转换的方式,如果一方的数据项定义发生了改变,不能及时通知对方,或者在多方异构系统两两异构系统中指定的转换标准不一致时,造成转换容易出错,转换效率低。综上所述,现有技术中将异构系统中的同义数据进行识别和关联的方法转换容易出错,且转换效率低,数据质量也难以保证。
发明内容
本发明实施例的目的在于提供一种关联异构系统同义数据的方法、装置、电子设备及介质,以实现快速、准确的识别并关联异构系统间的同义数据。具体技术方案如下:
为达到上述发明目的,本发明实施例公开了一种关联异构系统同义数据的方法,包括:
在第一异构系统的各数据库表中,判断是否有第一数据库表,该第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在该第一位置,将该第一位置所在的第一数据库的表项确定为第一目标属性项,将该第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
在第二异构系统的各数据库表中,判断是否有第二数据库表,该第二数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第二位置,若存在该第二位置,将该第二位置所在的第二数据库表的表项确定为第二目标属性项,将该第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,该每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
将该第一目标属性项位置与该第二目标属性项位置建立关联;
将该第一目标属性项位置存储的属性内容,与该第二目标属性项位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据。
可选地,该在第一异构系统的各数据库表中,判断是否有第一数据库表,该第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置之前,该方法还包括:
将该预设样本集中多个数据对象,存储在该第一异构系统的各数据库表的对应位置;
将该预设样本集中多个数据对象,存储在该第二异构系统的各数据库表的对应位置;
监测该第一异构系统的各数据库表的对应位置和该第二异构系统的各数据库表的对应位置。
可选地,在该监测该第一异构系统的各数据库表的对应位置和该第二异构系统的各数据库表的对应位置之后,该方法还包括:
将该第一数据库表与该第二数据库表建立关联。
可选地,该将该第一数据库表与该第二数据库表建立关联,包括:
当查找到该第一数据库表为M个、该第二数据库表为N个时,建立该第一异构系统的M个该第一数据库表,与该第二异构系统的N个该第二数据库表的关联,其中,该M、N均为大于或等于1的自然数。
可选地,该在第一异构系统的各数据库表中,判断是否有第一数据库表,该第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,包括:
在该第一异构系统的各数据库表中,通过查找该预设样本集中各数据对象的该第一属性项的属性内容的存储位置,判断是否有第一数据库表,该第一数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第一位置;
相应的,该在第二异构系统的各数据库表中,判断是否有第二数据库表,该第二数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第二位置,包括:
在该第二异构系统的各数据库表中,通过查找该预设样本集中各数据对象的该第一属性项的属性内容的存储位置,判断是否有第二数据库表,该第二数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第二位置。
可选地,该将该第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若该第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M列位置,将该M列位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该将该第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若该第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N列位置,将该N列位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该将该第一目标属性项位置与该第二目标属性项位置建立关联,包括:
将该M列位置与该N列位置建立关联。
可选地,该将该第一目标属性项位置存储的属性内容,与该第二目标属性项位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,包括:
将该M列位置存储的属性内容与该N列位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于等于1的自然数。
可选地,该将该第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若该第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M列位置,将该M列位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该将该第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若该第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N行位置,将该N行位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该将该第一目标属性项位置与该第二目标属性项位置建立关联,包括:
将该M列位置与该N行位置建立关联。
可选地,该将该第一目标属性项位置存储的属性内容,与该第二目标属性项位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,包括:
将该M列位置存储的属性内容与该N行位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于等于1的自然数。
可选地,该将该第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若该第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M行位置,将该M行位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该将该第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若该第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N行位置,将该N行位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该将该第一目标属性项位置与该第二目标属性项位置建立关联,包括:
将该M行位置与该N行位置建立关联。
可选地,该将该第一目标属性项位置存储的属性内容,与该第二目标属性项位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,包括:
将该M行位置存储的属性内容与该N行位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于或等于1的自然数。
为达到上述发明目的,本发明实施例还公开了一种关联异构系统同义数据的装置,包括:
目标第一位置确定模块,用于在第一异构系统的各数据库表中,判断是否有第一数据库表,该第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在该第一位置,将该第一位置所在的第一数据库的表项确定为第一目标属性项,将该第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
目标第二位置确定模块,用于在第二异构系统的各数据库表中,判断是否有第二数据库表,该第二数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第二位置,若存在该第二位置,将该第二位置所在的第二数据库表的表项确定为第二目标属性项,将该第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,该每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
位置关联模块,用于将该第一目标属性项位置与该第二目标属性项位置建立关联;
数据关联模块,用于将该第一目标属性项位置存储的属性内容,与该第二目标属性项位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据。
可选地,该装置还包括:
第一存储模块,用于将该预设样本集中多个数据对象,存储在该第一异构系统的各数据库表的对应位置;
第二存储模块,用于将该预设样本集中多个数据对象,存储在该第二异构系统的各数据库表的对应位置;
监测模块,用于监测该第一异构系统的各数据库表的对应位置和该第二异构系统的各数据库表的对应位置。
可选地,该装置还包括:
列表关联模块,用于将该第一数据库表与该第二数据库表建立关联。
可选地,该列表关联模块,具体用于当查找到该第一数据库表为M个、该第二数据库表为N个时,建立该第一异构系统的M个该第一数据库表,与该第二异构系统的N个该第二数据库表的关联,其中,该M、N均为大于或等于1的自然数。
可选地,该目标第一位置确定模块,具体用于在该第一异构系统的各数据库表中,通过查找该预设样本集中各数据对象的该第一属性项的属性内容的存储位置,判断是否有第一数据库表,该第一数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第一位置;
相应的,该目标第二位置确定模块,具体用于在该第二异构系统的各数据库表中,通过查找该预设样本集中各数据对象的该第一属性项的属性内容的存储位置,判断是否有第二数据库表,该第二数据库表存在存储有该预设样本集中每个数据对象的该第一属性项的属性内容的第二位置。
可选地,该目标第一位置确定模块,包括:
第一位置对应列确定子模块,用于若该第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M列位置,将该M列位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该目标第二位置确定模块,包括:
第二位置对应列确定子模块,用于若该第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N列位置,将该N列位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该位置关联模块,包括:
列与列关联子模块,用于将该M列位置与该N列位置建立关联。
可选地,该数据关联模块,具体用于将该M列位置存储的属性内容与该N行位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于等于1的自然数。
可选地,该目标第一位置确定模块,包括:
第一位置对应列确定子模块,用于若该第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M列位置,将该M列位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该目标第二位置确定模块,包括:
第二位置对应行确定子模块,用于若该第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N行位置,将该N行位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该位置关联模块,包括:
列与行关联子模块,用于将该M列位置与该N行位置建立关联。
可选地,该数据关联模块,具体还用于将该M列位置存储的属性内容与该N行位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于等于1的自然数。
可选地,该目标第一位置确定模块,包括:
第一位置对应行确定子模块,用于若该第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个该第一数据库表的每个该第一目标属性项存储所有属性内容的位置形成M行位置,将该M行位置确定为该第一目标属性项位置,该M为大于或等于1的自然数;
相应地,该目标第二位置确定模块,包括:
第二位置对应行确定子模块,用于若该第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个该第二数据库表的每个该第二目标属性项存储所有属性内容的位置形成N行位置,将该N行位置确定为该第二目标属性项位置,该N为大于或等于1的自然数;
该位置关联模块,包括:
行与行关联子模块,用于将该M行位置与该N行位置建立关联。
可选地,该数据关联模块,具体还用于将该M行位置存储的属性内容与该N行位置存储的属性内容,关联为该第一异构系统与该第二异构系统的同义数据,其中,该M、N均为大于或等于1的自然数。
为达到上述发明目的,本发明实施例还公开了一种电子设备,包括存储器和处理器;
该存储器,用于储存可执行程序代码;
该处理器,用于读取该存储器中存储的可执行程序代码,以实现上述关联异构系统同义数据的方法的任一方法步骤。
为达到上述发明目的,本发明实施例还公开了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时,实现上述关联异构系统同义数据的方法的任一方法步骤。
本发明实施例提供的一种关联异构系统同义数据的方法、装置、电子设备及介质,可以实现快速、准确的识别并关联异构系统间的同义数据。具体为,在第一异构系统各数据库表中以及第二异构系统各数据库表中,分别判断是否存在存储有预设样本集中各数据对象同一属性项的属性内容存储的位置,如果都存在,进而将存储位置所在的数据库表项确定为目标属性项,将目标属性项对应存储所有属性内容的位置确定为目标属性项位置,以及将目标属性项位置关联,实现将多个异构系统中,数据库表的具体表项中所有属性内容的存储位置建立关联。本发明实施例只需要通过查找预设样本集中多个数据对象的同一属性项属性内容的存储位置,即可发现建立数据库列表中位置关联,则本发明实施例在查找以及建立关联上,比起现有技术的人工阅读查找全部数据,以及将多个异构系统不同数据格式的全部数据转换成相同格式的全部数据,大大提高了速率。
另外,在本发明实施例中,通过上述异构系统中,数据库表的具体表项中所有属性内容的存储位置的关联,进而确定将该位置内存储的所有数据关联为本发明实施例的同义数据。比起现有技术的人工阅读关联同义数据,以及统一转换的方式,本发明实施例从同一属性项的角度关联同义数据,则本发明建立关联的准确性更高。另外,通过位置关联,则以前存储在第一目标属性项位置与第二目标属性项位置的历史数据也为同义数据,以后再有更多数据对象存储时,存储在第一目标属性项位置与第二目标属性项位置的属性内容,可主动关联为同义数据。本发明实施例通过关联异构系统间的同义数据,能够有效的进行数据打通、整合和业务联动。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的一种关联异构系统同义数据的方法流程图;
图2为本发明实施例的第一异构系统对应的医院信息化系统A的信息录入界面;
图3为本发明实施例的第二异构系统对应的医院信息化系统B的信息录入界面;
图4为本发明实施例的一种关联异构系统同义数据的装置结构示意图;
图5为本发明实施例的一种电子设备结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,存在关联异构系统间同义数据的方法,例如,人工比对的方式。具体为采用人工阅读理解软件系统A、B的厂商系统提供的数据项说明文档,对说明文档中的同义词进行识别、比对和关联。但由于复杂系统中的数据项非常多,所以这种方法最大的缺点是耗时耗人力,而且难免发生理解上的错误。还有制定标准规范,统一转换为规范格式的关联方式。这种方法是由国家主管部门或行业组织,制定一个数据标准规范,由A、B等全体厂商均按该标准进行数据格式转换,以规范的数据格式来交换。这种方式看上去很好,但在实践中却遇到了很大的问题和阻碍。首先是转换的工作有成本,包括时间成本、开发成本等;其次,非强制性的规范约束力不足,一些厂商往往并不遵守或仅部分遵守;另外,转换过程中的数据质量也难以保证。
为了解决上述问题,本发明实施例公开了一种关联异构系统同义数据的方法、装置、电子设备及介质,旨在实现相同或相近功能的异构软件系统(如来自不同软件开发商、或同一开发商的不同版本等)中的同义数据主动识别并自动关联,从而实现行业数据打通、整合和联动。详细请看如下实施方式。
为达到上述发明目的,本发明实施例公开了一种关联异构系统同义数据的方法,如图1所示。图1为本发明实施例的一种关联异构系统同义数据的方法流程图,包括:
S101,在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在第一位置,将第一位置所在的第一数据库的表项确定为第一目标属性项,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置。
在本发明实施例中,关联同业系统的多个异构系统间同义数据时,可通过建立两两异构系统间同义数据的关联,进而将同业系统的多个异构系统间同义数据建立关联。在建立两个异构系统间同义数据的关联时,可以将这两个异构系统中的一个异构系统定义为第一异构系统,另一个异构系统定义为第二异构系统。数据对象是性质相同的数据元素的集合,例如人;各属性项为表现数据对象各项属性的项目,例如当前数据对象为人时各属性项可为姓名、性别、年龄、身高等;第一属性项为该第一异构系统与该第二异构系统各数据对象相同属性项中任一属性项。因为录入的数据对象是已知的,则第一异构系统与该第二异构系统各数据对象相同属性项也是已知的。可指定该第一异构系统与该第二异构系统各数据对象相同属性项中任一属性项为第一属性项。预设样本集为提前录入的多个数据对象的样本数据集合。在第一异构系统存储该预设样本集中各数据对象第一属性项所对应的属性内容的位置,定义为本发明实施例的第一位置。
每个异构系统中可存在存储每个数据对象包括的多个属性项、以及各属性项的属性内容的多张数据库表。每个数据库表中的各属性项互不相同,数据对象的一个属性项可存储在多个数据库表中。
在第一异构系统各数据库表中,可通过扫描或者遍历查找的方式,判断是否有数据库表,该数据库表中存在存储有预设样本集中每个数据对象的第一属性项的属性内容,若存在该数据库则在该第一异构系统中找到了第一数据库表。将该第一数据库表中第一位置所在的表项确定为第一目标属性项。
S102,在第二异构系统的各数据库表中,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置,若存在第二位置,将第二位置所在的第二数据库表的表项确定为第二目标属性项,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同。
在第二异构系统存储该预设样本集中各数据对象第一属性项所对应的属性内容的位置,定义为本发明实施例的第一位置。
上述在第一异构系统确定了第一目标属性项位置后,在第二异构系统确定第二目标属性项位置的方法,同在第一异构系统确定第一目标属性项位置的方法。
可为通过扫描或者遍历查找各数据库表,判断是否有数据库表,该数据库表中存在存储有预设样本集中每个数据对象的第一属性项的属性内容,若存在该数据库则在该第二异构系统中找到了第二数据库表。将该第二数据库表中第二位置所在的表项确定为第二目标属性项。
S103,将第一目标属性项位置与第二目标属性项位置建立关联。
关联为建立起异构系统间同义数据的等价关系。上述在第一异构系统中确定了第一目标属性项位置,以及在第二异构系统中确定了第二目标属性项位置后,将该第一目标属性项位置与该第二目标属性项位置建立关联。
在本发明实施例中,首先将第一目标属性项位置与第二目标属性项位置建立关联的目的是,将该第一异构系统存储第一属性项的列表位置与该第二异构系统存储第一属性项的列表位置建立关联。即为当以后有新增数据对象时,所有新增数据对象的第一属性项属性内容就会自动存储在位置对应的列表中。实现了新增数据对象同义数据的主动识别关联。
S104,将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据。
在上述将第一目标属性项位置与第二目标属性项位置建立关联后,即第一异构系统存储第一属性项的列表位置与该第二异构系统存储第一属性项的列表有关联,则该第一异构系统第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,即为第一异构系统与第二异构系统的同义数据。
关联同业系统不同异构系统间的同义数据的意义在于,可以实现同义数据同业系统各不同异构系统的所有数据的打通、整合和联动。以医院信息化系统为例,假设在第一异构系统A中,门诊挂号的患者姓名和身份证号出现在功能界面A-UI-1中,录入的数据最终存储在数据库表A-DB的病人Patients表中,表项名为姓名name和身份证号id;第二异构系统B中,同样的信息出现在功能界面B-UI-1中,录入的数据最终存储在数据库B-DB的病人ks_mzgh表中,表项名为姓名hzxm和身份证号sfzh。则第一异构系统A中病人Patients表的表项name,与第二异构系统B中病人ks_mzgh表的表项hzxm存储的数据为同义数据。
在这个例子中,患者姓名和身份证号分别是同义词(在业务上具有同一指代),虽然在异构系统中它的表现、命名、存储等实现方式可能是不同的,但将其识别并关联起来是有意义的。例如,将不同金融机构的自然人关联起来,可以分析同一自然人的全部银行借贷情况和信用情况;将一个患者在不同医疗机构的就诊记录按时间顺序关联起来,就可以展现一个人的生命全程的健康轨迹,将一个车的车牌号在不同网约车系统中关联起来,就可以展现一辆车的运营情况,从而为行业监管、车辆保险等提供相关决策依据。
本发明实施例提供的一种关联异构系统同义数据的方法,可以实现快速、准确的识别并关联异构系统间的同义数据。具体为,在第一异构系统各数据库表中以及第二异构系统各数据库表中,分别判断是否存在存储有预设样本集中各数据对象同一属性项的属性内容存储的位置,如果都存在,进而将存储位置所在的数据库表项确定为目标属性项,将目标属性项对应存储所有属性内容的位置确定为目标属性项位置,以及将目标属性项位置关联,实现将多个异构系统中,数据库表的具体表项中所有属性内容的存储位置建立关联。本发明只需要通过查找预设样本集中多个数据对象的同一属性项属性内容的存储位置,即可发现建立数据库列表中位置关联,则本发明实施例在查找以及建立关联上,比起现有技术的人工阅读查找全部数据,以及将多个异构系统不同数据格式的全部数据转换成相同格式的全部数据,大大提高了速率。
另外,在本发明实施例中,通过上述异构系统中,数据库表的具体表项中所有属性内容的存储位置的关联,进而确定将该位置内存储的所有数据关联为本发明实施例的同义数据。比起现有技术的人工阅读关联同义数据,以及统一转换的方式,本发明实施例从同一属性项的角度关联同义数据,则本发明建立关联的准确性更高。另外,通过位置关联,则以前存储在第一目标属性项位置与第二目标属性项位置的历史数据也为同义数据,以后再有更多数据对象存储时,存储在第一目标属性项位置与第二目标属性项位置的属性内容,可主动关联为同义数据。本发明实施例通过关联异构系统间的同义数据,能够有效的进行数据打通、整合和业务联动。
现有技术中,有一种异构数据的整合方法以及装置,提出“预先建立至少一个目标表与多源表之间的二维关系;根据二维关系生成至少一个目标表的订阅规则,实时从多源表中采集针对目标事物的源数据,并基于至少一个目标表的订阅规则对实时采集到的源数据进行汇总并缓存,按照预设策略将汇总并缓存后的源数据装载至对应的至少一个目标表中。”该关联方法为按照预设规则对二维关系表的数据汇总以及缓存,并不存在本发明实施例的同义数据的关联,则本发明实施例解决了二维数据表中同义数据的关联问题。
需要说明的是,本发明以下实施例中均以两个异构系统为例,说明本发明关联异构系统同义数据的方法。若存在两个以上的异构系统时,将多个异构系统分成两两一组,按照所在实施例中两个异构系统的实施方式,对每组异构系统实施具体操作方式,以下不再赘述。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置之前,方法还包括:
步骤一,将预设样本集中多个数据对象,存储在第一异构系统的各数据库表的对应位置。
在本发明实施例中,可将预设样本集中多个数据对象,录入图2所示的本发明实施例的第一异构系统对应的医院信息化系统A的信息录入界面。
具体地,设有医院信息化系统A、B,将医院信息化系统A作为第一异构系统,医院信息化系统B作为第二异构系统。将第一异构系统与第二异构系统进行功能对功能的操作(如门诊挂号对门诊挂号)。准备适用于对应功能的预设样本集,该预设样本集中包括多个数据对象D(属性值为D.c1,D.c2,…,D.cn),如表1所示。表1中多个数据对象为D1、D2、D3,每个数据对象的属性项为:病人姓名、性别、药品名称、数量。表中其余内容表示一个数据对象的一个属性项对应的属性内容。按照医院信息化系统A的录入方法进行输入和提交,使该预设样本集各数据对象的各属性项,以及各属性项对应的属性内容被医院信息化系统A的各数据库表存储。
表1:数据对象信息表
数据对象 | 病人姓名 | 性别 | 药品名称 | 数量 |
D1 | 张三 | 男 | 阿司匹林 | 10 |
D2 | 李四 | 女 | 头孢 | 1 |
D3 | 王二 | 男 | 止咳糖浆 | 2 |
步骤二,将预设样本集中多个数据对象,存储在第二异构系统的各数据库表的对应位置。
在本发明实施例中,可将该上述预设样本集中多个数据对象,录入图3所示的本发明实施例的第二异构系统对应的医院信息化系统B的信息录入界面。
将上述表1的多个数据对象,按照医院信息化系统B的录入方法进行输入和提交,使该预设样本集各数据对象的各属性项,以及各属性项对应的属性内容被医院信息化系统A的各数据库表存储。
步骤三,监测第一异构系统的各数据库表的对应位置和第二异构系统的各数据库表的对应位置。
在第一异构系统数据库以及第一异构系统数据库中设置监听器,或者通过扫描第一异构系统数据库以及第一异构系统数据库的方式,监测各数据库表的各行以及各列所确定的位置存储内容的变化(例如增,删,替换)。
可见,通过本发明实施例,可实现实时监测各异构系统的各数据库表中存储内容的变化情况,进而实现监测预设样本集中各数据对象的各属性项、各属性项的属性内容存储在各数据库表的位置,为后续关联异构系统的同义数据做准备。
在现有的异构软件系统间主数据匹配的实现方法中,需要建立中间对照表和数据字典,本质上仍是传统技术中人工比对识别对照关系后再通过程序进行关联,而本发明实施例通过实时监测数据库表的变化,可更加快速的监测数据变化,以实现监测数据对象中各属性项以及属性项的属性内容的存储情况,进而更加快速的识别和关联同义数据。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,在监测第一异构系统各数据库表的位置之后,方法还包括:
将第一数据库表与第二数据库表建立关联。
设在第一异构系统的医院信息化系统A中实时录入数据对象d…d’后,逐一监测数据对象d…d’的每一属性项以及各属性项对应的属性内容。设在第二异构系统的医院信息化系统B中实时录入数据对象d…d’后,逐一监测数据对象d…d’的每一属性项以及各属性项对应的属性内容。
在录入各数据对象时,可能存在某个或某几个数据对象的同一属性项误录入其他数据列表的其他属性项,或者分散录入多个数据列表该相同的属性项中,如将这样的数据对象的属性项所在的数据库表与其他异构系统的数据库表关联,显然是不正确的。
当监测的预设样本集中数据对象样本量不定时,监测到第一属性项在第一异构系统的医院信息化系统A的数据库表,与第二异构系统的医院信息化系统B的数据库表的存储情况,存在如下潜在关联关系:
(1)不稳定:即对多个数据对象,监测到第一异构系统的一个或多个数据库表存储第一属性项的属性内容,与第二异构系统的一个或多个数据库表存储第一属性项的属性内容的位置对应关系时有时无;
(2)稳定在1:1的对应。即当预设样本集全部数据对象录入完成后,监测到第一异构系统的一个数据库表存储各数据对象的第一属性项的属性内容,与第二异构系统的一个数据库表存储各数据对象的第一属性项的属性内容的位置对应关系保持稳定。
(3)稳定M:N对应。即当预设样本集全部数据对象录入完成后,监测到第一异构系统的M个数据库表存储各数据对象的第一属性项的属性内容,与第二异构系统的N个数据库表存储各数据对象的第一属性项的属性内容的位置对应关系保持稳定。
则上述关联关系(2)、(3)中的潜在关联关系为本发明实施例正确的关联关系。将上述关联关系(2)中第一异构系统的存储各数据对象第一属性项的一个数据库表定义为第一数据库表,上述关联关系(2)中第二异构系统的存储各数据对象第一属性项的一个数据库表定义为第二数据库表,将该第一数据库表与该第二数据库表建立关联。
将上述关联关系(3)中第一异构系统的存储各数据对象第一属性项的M个数据库表定义为第一数据库表,上述关联关系(3)中第二异构系统的存储各数据对象第一属性项的N个数据库表定义为第二数据库表,将该第一数据库表与该第二数据库表建立关联。
具体地,当查找到第一数据库表为M个、第二数据库表为N个时,建立第一异构系统的M个第一数据库表,与第二异构系统的N个第二数据库表的关联,其中,M、N均为大于或等于1的自然数。
可见,在本发明实施例中,通过监测预设样本集中多个数据对象同一属性项的位置,实现将第一异构系统以及第二异构系统中,存储该预设样本集中多个数据对象同一属性项的位置的数据库表建立对应关系,在后期查找同义数据时,可直接在第一数据库表以及第二数据库表中确定。
现有技术中有基于XML(Extensible Markup Language,可扩展标记语言)数据格式、由中间方做数据转换和映射的一种加速异构平台数据整合的方法,该整合方法本质上是转换为某种(规范)格式后,才能实现数据关联。本发明实施例在第一异构系统以及第二异构系统中,通过实时监测各异构系统的各数据库表,确定存储相同属性项的数据库表的关联,进而通过该关联的数据库表实行同义数据关联,则本发明在准确性上更有保障,在操作上也更加方便。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,包括:
在第一异构系统的各数据库表中,通过查找预设样本集中各数据对象的第一属性项的属性内容的存储位置,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置;
具体地,在第一异构系统各数据库表中,可通过实时扫描各数据库表,查找存储有预设样本集中各数据对象第一属性项的属性内容的存储位置。如果在一张数据库表里查找到预设样本集中各数据对象第一属性项的属性内容,说明在该数据库表中存在第一位置。在多张数据库表的每张表中都找到了该预设样本集中各数据对象第一属性项的属性内容,说明在该多张数据库表中存在第一位置,进而说明在第一异构系统中存在第一位置。
相应的,在第二异构系统的各数据库表中,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置,包括:
在第二异构系统的各数据库表中,通过查找预设样本集中各数据对象的第一属性项的属性内容的存储位置,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置。
在第二异构系统各数据库表中判断第二位置的方法,如同在第一异构系统各数据库表中判断第一位置的方法。可通过实时扫描判断各数据库表,查找存储各数据对象第一属性项的属性内容的存储位置。
可见,通过本发明实施例,可实现判断第一异构系统与第二异构系统中,是否有预设样本集中各数据对象同一属性项的存储位置,进而为后期关联异构系统的存储位置做准备。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
步骤一,若第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M列位置,将M列位置确定为第一目标属性项位置,M为大于或等于1的自然数。
上述实施例确定了第一异构系统中存在M个第一数据库表,因为第一数据库表具有预设样本集中各数据对象的第一属性项,则第一数据库表具有预设样本集中各数据对象的第一属性项的属性内容,进而判断条件成立,在第一异构系统的M个第一数据库表存在第一位置。第一异构系统各数据库表中,每个数据库表项以列的形式存储所有属性内容时,则每个第一数据库表中第一位置所在的数据库表项存储所有属性内容的位置形成一列,M个第一数据库表第一位置所在的数据库表项存储所有属性内容的位置形成M列,将这M列位置确定为第一目标属性项位置。
例如,根据表1的数据对象信息表可知,实时录入第一异构系统的医院信息化系统A,与第二异构系统的医院信息化系统B中,多个数据对象的相同属性项为病人姓名、性别、药品名称、数量。在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第一异构系统的医院信息化系统A中有如下A.pacitents(a)表以及A.drugs(a)表:
A.pacitents(a)
name | sex | age | job |
张三 | 男 | 40 | 工程师 |
李四 | 女 | 20 | 学生 |
王二 | 男 | 25 | 自由职业 |
… | … | … | … |
A.drugs(a)
Pname | Page | Dname | Damount | Dmoney |
张三 | 40 | 阿司匹林 | 10 | 10 |
李四 | 20 | 头孢 | 1 | 5.55 |
王二 | 25 | 止咳糖浆 | 2 | 9.2 |
… | … | … | … |
A.pacitents(a)表示第一异构系统的医院信息化系统A的患者信息表,其中,name表项表示病人姓名;sex表项表示性别;age表项表示年龄;job表项表示工作。A.drugs(a)表示第一异构系统的医院信息化系统A的药品信息表,其中,Pname表项表示病人姓名;Page表项表示年龄;Dname表项表示药品名称;Damount表项表示药品数量;Dmoney表项表示药品总费用。
通过上述A.pacitents(a)和A.drugs(a)可知,在第一异构系统的医院信息化系统A中,查找到第一属性项为病人姓名的第一数据库表有2个,即为A.pacitents(a)、A.drugs(a)。在A.pacitents(a)表中获取存储各数据对象病人姓名的属性内容的位置对应的列name,在A.drugs(a)表中获取存储各数据对象病人姓名的属性内容的位置对应的列Pname,将name、Pname这2列确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为性别的第一数据库表有1个,即为A.pacitents(a)。在A.pacitents(a)中表获取存储各数据对象性别的属性内容的位置对应的列sex,将sex这列确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为药品名称的第一数据库表有1个,即为A.drugs(a)。在A.drugs(a)表中获取存储各数据对象药品名称的属性内容的位置对应的列Dname,将Dname这1列确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为数量的第一数据库表有1个,即为A.drugs(a)。在A.drugs(a)表中获取存储各数据对象数量的属性内容的位置对应的列Damount,将Damount这1列确定为第一目标属性项位置。
相应地,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
步骤二,若第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N列位置,将N列位置确定为第二目标属性项位置,N为大于或等于1的自然数。
上述实施例确定了第二异构系统中存在N个第二数据库表,因为第二数据库表具有预设样本集中各数据对象的第一属性项,则第二数据库表具有预设样本集中各数据对象的第一属性项的属性内容,进而判断条件成立,在第二异构系统的N个第二数据库表存在第二位置。第二异构系统各数据库表中,每个数据库表项以列的形式存储所有属性内容时,则每个第二数据库表中第二位置所在的数据库表项存储所有属性内容的位置形成一列,N个第二数据库表第二位置所在的数据库表项存储所有属性内容的位置形成N列,将这N列位置确定为第二目标属性项位置。
例如,若第二异构系统各数据库表中,存储各数据对象一个属性项的属性内容的位置形成列时,在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第二异构系统的医院信息化系统B中,可有如下B.list(a)表:
B.list(a)
mzbr | xb | nl | bz | ypmc | ypdj | ypsl | ypzj | bz |
张三 | 男 | 40 | 关节炎 | 阿司匹林 | 1 | 10 | 10 | … |
李四 | 女 | 20 | 呼吸道感染 | 头孢 | 3.55 | 1 | 3.55 | … |
王二 | 男 | 25 | 流感 | 止咳糖浆 | 3.84 | 2 | 7.68 | … |
… | … | … | … | … | … | … | … | … |
B.list(a)表示第二异构系统的医院信息化系统B的信息表,其中,xm表项表示病人姓名;xb表项表示性别;nl表项表示年龄;bz表项表示病症;ypmc表项表示药品名称;ypdj表项表示药品单价;ypsl表项表示药品数量;ypzj表项表示药品总价;bz表项表示备注。
通过上述B.list(a)可知,在第二异构系统的医院信息化系统B中,查找到第一属性项为病人姓名的第一数据库表有1个,即为B.list(a)。在B.list(a)表中获取存储各数据对象病人姓名的属性内容的位置对应的列xm,将xm这1列确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为性别的第一数据库表有1个,即为B.list(a)。在B.list(a)中表获取存储各数据对象性别的属性内容的位置对应的列xb,将xb这1列确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为药品名称的第一数据库表有1个,即为B.list(a)。将ypmc这1列确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为数量的第一数据库表有1个,即为B.list(a)。在B.list(a)表中获取存储各数据对象数量的属性内容的位置对应的列ypsl,将ypsl这1列确定为第二目标属性项位置。
步骤三,将第一目标属性项位置与第二目标属性项位置建立关联,包括:
将M列位置与N列位置建立关联。
根据上述结果,则可将第一异构系统的医院信息化系统A与第二异构系统的医院信息化系统B,建立如下列位置与列位置的关联关系:
上述在第一异构系统的医院信息化系统A与第二异构系统的医院信息化系统B中,确定了存储相同属性项的属性内容的位置,则第一异构系统的位置与第二系统的该位置存在关联。即第一异构系统的第一目标属性位置与第二异构系统的第二目标属性位置存在关联关系。
则可将第一异构系统的医院信息化系统A与第二异构系统的医院信息化系统B,建立如下列位置与列位置的关联关系pR:
pR(A.pacitents(a).name,A.drugs(a).Dname=B.list(a).xm);
pR(A.pacitents(a).Psex=B.list(a).xb);
pR(A.drugs(a).Dname=B.list(a).ypmc);
pR(A.drugs(a).Damount=B.list(a).ypsl)。
在本发明实施例中,在第一异构系统的医院信息化系统A中存储的A.drugs(a)中张三的Damount与张三的Dmoney项的数据内容都是10。在第二异构系统的医院信息化系统B中存储的B.list(a)中张三的ypsl与张三的ypzj项的数据内容都也是10。单从属性内容相同的角度考虑,则还可建立如下关系:
pR(A.drugs(a).Damount=B.list(a).ypzj);
pR(A.drugs(a).Dmoney=B.list(a).ypsl)。
经过李四录入后,在第一异构系统的医院信息化系统A中李四的Damount为1、Dmoney为5.55,在第二异构系统的医院信息化系统B中李四的ypzj为3.55,ypsl为1,则上述关系不成立。
当再次录入更多数据对象后,上述关联关系:
pR(A.pacitents(a).name,A.drugs(a).Dname=B.list(a).xm);
pR(A.pacitents(a).Psex=B.list(a).xb);
pR(A.drugs(a).Dname=B.list(a).ypmc);
pR(A.drugs(a).Damount=B.list(a).ypsl)保持稳定,则说明上述关联关系成立。其中,姓名为M:1的关联关系,即为第一属性项为姓名的属性项,在医院信息化系统A中有多个数据库表的列,与医院信息化系统B中一个数据库表的列对应。
可见,通过本发明实施例,可实现通过判断预设样本集中各数据对象同一属性项的属性内容的存储位置,进而当该存储位置所在的数据库表项存储所有属性内容的位置形成一列时,建立第一异构系统该列与第二异构系统该列的关联,为后期关联列与列的同义数据做准备。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,包括
将M列位置存储的属性内容与N列位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于等于1的自然数。
在本发明实施例中,将上述第一异构系统的第一目标属性项对应列位置,与第二异构系统的第二目标属性项对应列位置,存储的属性内容关联为同义数据。
具体地,通过上述列位置与列位置的关联关系:
pR(A.pacitents(a).name,A.drugs(a).Dname=B.list(a).xm);
pR(A.pacitents(a).Psex=B.list(a).xb);
pR(A.drugs(a).Dname=B.list(a).ypmc);
pR(A.drugs(a).Damount=B.list(a).ypsl),
则第一异构系统的A.pacitents(a)表中name列、A.drugs(a)表中Dname列,与第二异构系统的B.list(a)表中xm列存储的属性内容为同义数据;第一异构系统的A.pacitents(a)表中Psex列,与第二异构系统的B.list(a)表xb列存储的属性内容为同义数据;第一异构系统的A.drugs(a)表中Dname列,与第二异构系统的B.list(a)表中ypmc列存储的属性内容为同义数据;第一异构系统的A.drugs(a)表中Damount列,与第二异构系统的B.list(a)表中ypsl列存储的属性内容为同义数据。且以后存储在上述关联列中的数据内容都为同义数据,不需要每次实时录入,即可主动识别上述异构系统间的同义数据。
可见,通过预设样本集中各数据对象建立的异构系统的数据库表的列与列的位置关联,可实现将存储在该关联关系的列与列位置的历史数据以及后期新增的属性内容,程序化、算法化的主动关联同义数据。该方法具备一定通用性和规律性的,而非完全依赖人工的、被动的、特定的方式。这种关联关系的建立,能够有效的进行异构系统间数据的打通、整合和业务联动。
另外,比起现有技术中,基于源数据的标签和数据本身进行语义分析和相似度计算,形成的基于语义标注的异构数据关联方法及系统,本发明为通过找到位置为预设样本集的各数据对象相同属性项的属性内容对应位置,将该位置所在的数据库项表的所有属性内容存储位置关联为同义数据,即为上述关联的列与列的同义数据,本发明可不依赖数据标签及其语义分析,同时本发明中将相同属性项对应的属性内容可自动关联为同义数据,则本发明实施例的精确度更高,主动性更高。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
步骤一,若第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M列位置,将M列位置确定为第一目标属性项位置,M为大于或等于1的自然数。
本发明实施例中,确定第一目标属性项位置如同上述实施例的确定第一目标属性项位置,此处不再赘述。
例如,根据表1的数据对象信息表可知,实时录入第一异构系统的医院信息化系统A,与第二异构系统的医院信息化系统B中,多个数据对象的相同属性项为病人姓名、性别、药品名称、数量。在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第一异构系统的医院信息化系统A中,可有上述A.pacitents(a)表和A.drugs(a)表。
通过上述A.pacitents(a)表和A.drugs(a)表可知,则当第一属性项为病人姓名时,可将A.pacitents(a)表中name、A.drugs(a)表中Pname这2列确定为第一目标属性项位置;当第一属性项为性别时,可将A.pacitents(a)表中sex这1列确定为第一目标属性项位置;当第一属性项为药品名称时,可将A.drugs(a)表中Dname这1行确定为第一目标属性项位置;当第一属性项为数量时,可将A.drugs(a)表中Damount这1列确定为第一目标属性项位置。
相应地,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
步骤二,若第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N行位置,将N行位置确定为第二目标属性项位置,N为大于或等于1的自然数。
上述实施例确定了第二异构系统中存在N个第二数据库表,因为第二数据库表具有预设样本集中各数据对象的第一属性项,则第二数据库表具有该预设样本集中各数据对象的第一属性项的属性内容,进而判断条件成立,在第二异构系统的N个第二数据库表存在第二位置。第二异构系统各数据库表中,每个数据库表项以行的形式存储所有属性内容时,则每个第二数据库表中第二位置所在的数据库表项存储所有属性内容的位置形成一行,N个第二数据库表第二位置所在的数据库表项存储所有属性内容的位置形成N行,将这N行位置确定为第二目标属性项位置。
例如,根据表1的数据对象信息表可知,实时录入第一异构系统的医院信息化系统A,与第二异构系统的医院信息化系统B中,多个数据对象的相同属性项为病人姓名、性别、药品名称、数量。在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第二异构系统的医院信息化系统B中,可有如下B.list(b)表:
B.list(b)
xm | 张三 | 李四 | 王二 | … |
xb | 男 | 女 | 男 | … |
n1 | 40 | 20 | 25 | … |
bz | 关节炎 | 呼吸道感染 | 流感 | … |
ypmc | 阿司匹林 | 头孢 | 止咳糖浆 | … |
ypdj | 1 | 3.55 | 3.84 | … |
ypsl | 10 | 1 | 2 | … |
ypzj | 10 | 3.55 | 7.68 | … |
bz | … | … | … | … |
B.list(b)表示第二异构系统的医院信息化系统B的信息表,其中,xm表项表示病人姓名;xb表项表示性别;nl表项表示年龄;bz表项表示病症;ypmc表项表示药品名称;ypdj表项表示药品单价;ypsl表项表示药品数量;ypzj表项表示药品总价;bz表项表示备注。
通过上述B.list(b)可知,在第二异构系统的医院信息化系统B中,查找到第一属性项为病人姓名的第一数据库表有1个,即为B.list(b)。在B.list(b)表中获取存储各数据对象病人姓名的属性内容的位置对应的行xm,将xm这1行确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为性别的第一数据库表有1个,即为B.list(b)。在B.list(b)中表获取存储各数据对象性别的属性内容的位置对应的行xb,将xb这1行确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为药品名称的第一数据库表有1个,即为B.list(b)。将ypmc这1行确定为第二目标属性项位置。
在第二异构系统的医院信息化系统B中,查找到第一属性项为数量的第一数据库表有1个,即为B.list(b)。在B.list(b)表中获取存储各数据对象数量的属性内容的位置对应的行ypsl,将ypsl这1行确定为第二目标属性项位置。
步骤三,将第一目标属性项位置与第二目标属性项位置建立关联,包括:
将M列位置与N行位置建立关联。
根据上述结果,则可将第一异构系统的医院信息化系统A与第二异构系统的医院信息化系统B,建立如下列位置与行位置的关联关系:
pR(A.pacitents(a).name,A.drugs(a).Dname=B.list(b).xm);
pR(A.pacitents(a).Psex=B.list(b).xb);
pR(A.drugs(a).Dname=B.list(b).ypmc);
pR(A.drugs(a).Damount=B.list(b).ypsl)。
当再次录入更多数据对象后,上述已建立关联的位置仍然成立,该上述关联关系正确。
在本发明实施例中,在第一异构系统的医院信息化系统A的A.drugs(a)表中,张三的Damount与张三的Dmoney项的数据内容都是10。在第二异构系统的医院信息化系统B的B.list(b)表中,张三的ypsl与张三的ypzj项的数据内容都也是10。单从属性内容相同的角度考虑,则还可建立列与行的关联关系:
pR(A.drugs(a).Damount=B.list(b).ypzj);
pR(A.drugs(a).Dmoney=B.list(b).ypsl)。
经过李四录入后,在第一异构系统的医院信息化系统A中李四的Damount为1、Dmoney为5.55,在第二异构系统的医院信息化系统B中李四的ypzj为3.55,ypsl为1,则上述关系不成立。
可见,在本发明实施例中,首先丰富了数据库表的存储形式,即可将原本存储各数据对象一个属性项的属性内容的位置形成的列,改变成存储各数据对象一个属性项的属性内容的位置形成行的存储形式。
另外,通过本发明实施例,可实现通过判断预设样本集中各数据对象同一属性项的属性内容的存储位置,进而将该存储位置所在的数据库表项存储所有属性内容的位置,即在第一异构系统中内该位置对应为列,在第二异构系统中内该位置对应为行的情况下,建立第一异构系统该列与第二异构系统该列的关联,为后期关联列位置与行位置的同义数据做准备。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,包括:
将M列位置存储的属性内容与N行位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于等于1的自然数。
该关联同义数据的方式如同上述关联同义数据的方式,此处不再赘述。则A.pacitents(a)、A.drugs(a)与B.list(b)关联后,得到的同义数据如下:
第一异构系统的A.pacitents(a)表中name列、A.drugs(a)表中Dname列,与第二异构系统的B.list(a)表中xm行存储的属性内容为同义数据;第一异构系统的A.pacitents(a)表中Psex列,与第二异构系统的B.list(b)表xb行存储的属性内容为同义数据;第一异构系统的A.drugs(a)表中Dname列,与第二异构系统的B.list(b)表中ypmc行存储的属性内容为同义数据;第一异构系统的A.drugs(a)表中Damount列,与第二异构系统的B.list(b)表中ypsl行存储的属性内容为同义数据。且以后存储在上述的建立关联的列位置与行位置中的数据内容都为同义数据。
可见,通过预设样本集各数据对象建立的异构系统的数据库表的列与行的位置关联,可实现将存储在该关联关系对应的列位置和行位置的历史数据以及后期新增的属性内容,程序化、算法化的主动关联同义数据。
另外,比起现有的异构数据源数据关联分析方法中,将已知格式的数据源解析到同样已知的目标数据源,且从数据源到目标单数据源的解析方式也是已知的,本质上是数据的格式转换,同义数据项的关联关系是已知的,并不存在对这种关联关系的主动识别和关联过程。本发明实施例通过实时监测各数据对象同一属性项的属性内容存储的位置,进而将该位置处的数据建立关联,则本发明实施例更能体现主动关联的效果。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
步骤一,若第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M行位置,将M行位置确定为第一目标属性项位置,M为大于或等于1的自然数。
上述实施例确定了第一异构系统中存在M个第一数据库表,因为第一数据库表具有预设样本集中各数据对象的第一属性项,则第一数据库表具有预设样本集中各数据对象的第一属性项的属性内容,进而判断条件成立,在第一异构系统的M个第一数据库表存在第一位置。第一异构系统各数据库表中,每个数据库表项以行的形式存储所有属性内容时,则每个第一数据库表中第一位置所在的数据库表项存储所有属性内容的位置形成一行,M个第一数据库表第一位置所在的数据库表项存储所有属性内容的位置形成M行,将这M行位置确定为第一目标属性项位置。
例如,根据表1的数据对象信息表可知,实时录入第一异构系统的医院信息化系统A,与第二异构系统的医院信息化系统B中,多个数据对象的相同属性项为病人姓名、性别、药品名称、数量。在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第一异构系统的医院信息化系统A中有如下A.pacitents(b)表以及A.drugs(b)表:
A.pacitents(b)表示第一异构系统的医院信息化系统A的患者信息表,其中,name表项表示病人姓名;sex表项表示性别;age表项表示年龄;job表项表示工作。A.drugs(b)表示第一异构系统的医院信息化系统A的药品信息表,其中,Pname表项表示病人姓名;Page表项表示年龄;Dname表项表示药品名称;Damount表项表示药品数量;Dmoney表项表示药品总费用。
通过上述A.pacitents(b)和A.drugs(b)可知,在第一异构系统的医院信息化系统A中,查找到第一属性项为病人姓名的第一数据库表有2个,即为A.pacitents(b)、A.drugs(b)。在A.pacitents(b)表中获取存储各数据对象病人姓名的属性内容的位置对应的行name,在A.drugs(b)表中获取存储各数据对象病人姓名的属性内容的位置对应的行Pname,将name、Pname这2行确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为性别的第一数据库表有1个,即为A.pacitents(b)。在A.pacitents(b)表中获取存储各数据对象性别的属性内容的位置对应的行sex,将sex这1行确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为药品名称的第一数据库表有1个,即为A.drugs(b)。在A.drugs(b)表中获取存储各数据对象药品名称的属性内容的位置对应的行Dname,将Dname这1行确定为第一目标属性项位置。
在第一异构系统的医院信息化系统A中,查找到第一属性项为数量的第一数据库表有1个,即为A.drugs(b)。在A.drugs(b)表中获取存储各数据对象数量的属性内容的位置对应的行Damount,将Damount这1行确定为第一目标属性项位置。
相应地,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
步骤二,若第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N行位置,将N行位置确定为第二目标属性项位置,N为大于或等于1的自然数。
本发明实施例中,每个数据库表项以行的形式存储所有属性内容时,确定第二目标属性项位置如同上述实施例中确定第二目标属性项位置的步骤,此处不再赘述。
例如,根据表1的数据对象信息表可知,实时录入第一异构系统的医院信息化系统A,与第二异构系统的医院信息化系统B中,多个数据对象的相同属性项为病人姓名、性别、药品名称、数量。在本步骤中,即将病人姓名、性别、药品名称、数量分别确定为第一属性项,则在第二异构系统的医院信息化系统A中,可有上述B.list(b)表。
在B.list(b)表中当第一属性项为病人姓名时,可将B.list(b)表中xm这行确定为第二目标属性项位置;当第一属性项为性别时,可将B.list(b)表中xb这1行确定为第二目标属性项位置;当第一属性项为药品名称时,可将B.list(b)表中ypmc这1行确定为第二目标属性项位置;当第一属性项为数量时,可将B.list(b)表中ypsl这1行确定为第二目标属性项位置。
步骤三,将第一目标属性项位置与第二目标属性项位置建立关联,包括:
将M行位置与N行位置建立关联。
根据上述结果,则可将第一异构系统的医院信息化系统A与第二异构系统的医院信息化系统B,建立如下行位置与行位置的关联关系:
pR(A.pacitents(b).name,A.drugs(b).Dname=B.list(b).xm);
pR(A.pacitents(b).Psex=B.list(b).xb);
pR(A.drugs(b).Dname=B.list(b).ypmc);
pR(A.drugs(b).Damount=B.list(b).ypsl)。
当再次录入更多数据对象后,上述已建立关联的位置仍然成立,该上述关联关系正确。
可见,在本发明实施例中,首先丰富了数据库表的存储形式,即可将原本存储各数据对象一个属性项的属性内容的位置形成的列,改变成存储各数据对象一个属性项的属性内容的位置形成行的存储形式。
另外,通过本发明实施例,可实现通过判断样本中各数据对象同一属性项的属性内容的存储位置,进而将该存储位置所在的数据库表项存储所有属性内容的位置,即在第一异构系统中内该位置对应为行,在第二异构系统中内该位置对应为行的情况下,建立第一异构系统该行与第二异构系统该行的关联,为后期关联行与行的同义数据做准备。
可选地,在本发明关联异构系统同义数据的方法的一种实施例中,将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,包括:将M行位置存储的属性内容与N行位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于或等于1的自然数。
该关联同义数据的方式如同上述关联同义数据的方式,此处不再赘述。则A.pacitents(b)、A.drugs(b)与B.list(b)关联后,得到的同义数据如下:
第一异构系统的A.pacitents(b)表中name行、A.drugs(b)表中Dname行,与第二异构系统的B.list(b)表中xm行存储的属性内容为同义数据;第一异构系统的A.pacitents(b)表中Psex行,与第二异构系统的B.list(b)表xb行存储的属性内容为同义数据;第一异构系统的A.drugs(b)表中Dname行,与第二异构系统的B.list(b)表中ypmc行存储的属性内容为同义数据;第一异构系统的A.drugs(b)表中Damount行,与第二异构系统的B.list(b)表中ypsl行存储的属性内容为同义数据。且以后存储在上述的建立关联的列与列中的数据内容都为同义数据,不需要每次实时录入,即可主动识别上述异构系统间的同义数据。
可见,通过样本数据对象建立的异构系统的数据库表的行与行的位置关联,可实现将存储在该行位置和行位置有关联关系的历史数据以及后期新增的属性内容,程序化、算法化的主动关联同义数据。
为达到上述发明目的,本发明实施例还公开了一种关联异构系统同义数据的装置,如图4所示。图4为本发明实施例的一种关联异构系统同义数据的装置结构示意图,包括:
目标第一位置确定模块401,用于在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在第一位置,将第一位置所在的第一数据库的表项确定为第一目标属性项,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
目标第二位置确定模块402,用于在第二异构系统的各数据库表中,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置,若存在第二位置,将第二位置所在的第二数据库表的表项确定为第二目标属性项,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;位置关联模块403,用于将第一目标属性项位置与第二目标属性项位置建立关联;
数据关联模块404,用于将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据。
本发明实施例提供的一种关联异构系统同义数据的装置,可以实现快速、准确的识别并关联异构系统间的同义数据。具体为,在第一异构系统各数据库表中以及第二异构系统各数据库表中,分别判断是否存在存储有预设样本集中各数据对象同一属性项的属性内容存储的位置,如果都存在,进而将存储位置所在的数据库表项确定为目标属性项,将目标属性项对应存储所有属性内容的位置确定为目标属性项位置,以及将目标属性项位置关联,实现将多个异构系统中,数据库表的具体表项中所有属性内容的存储位置建立关联。本发明只需要通过查找预设样本集中多个数据对象的同一属性项属性内容的存储位置,即可发现建立数据库列表中位置关联,则本发明实施例在查找以及建立关联上,比起现有技术的人工阅读查找全部数据,以及将多个异构系统不同数据格式的全部数据转换成相同格式的全部数据,大大提高了速率。
另外,在本发明实施例中,通过上述异构系统中,数据库表的具体表项中所有属性内容的存储位置的关联,进而确定将该位置内存储的所有数据关联为本发明实施例的同义数据。比起现有技术的人工阅读关联同义数据,以及统一转换的方式,本发明实施例从同一属性项的角度关联同义数据,则本发明建立关联的准确性更高。另外,通过位置关联,则以前存储在第一目标属性项位置与第二目标属性项位置的历史数据也为同义数据,以后再有更多数据对象存储时,存储在第一目标属性项位置与第二目标属性项位置的属性内容,可主动关联为同义数据。本发明实施例通过关联异构系统间的同义数据,能够有效的进行数据打通、整合和业务联动。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,装置还包括:
第一存储模块,用于将预设样本集中多个数据对象,存储在第一异构系统的各数据库表的对应位置;
第二存储模块,用于将预设样本集中多个数据对象,存储在第二异构系统的各数据库表的对应位置;
监测模块,用于监测第一异构系统的各数据库表的对应位置和第二异构系统的各数据库表的对应位置。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,装置还包括:
列表关联模块,用于将第一数据库表与第二数据库表建立关联。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,列表关联模块,具体用于当查找到第一数据库表为M个、第二数据库表为N个时,建立第一异构系统的M个第一数据库表,与第二异构系统的N个第二数据库表的关联,其中,M、N均为大于或等于1的自然数。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,目标第一位置确定模块401,具体用于在第一异构系统的各数据库表中,通过查找预设样本集中各数据对象的第一属性项的属性内容的存储位置,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置;
相应的,目标第二位置确定模块402,目标第二位置确定模块,具体用于在第二异构系统的各数据库表中,通过查找预设样本集中各数据对象的第一属性项的属性内容的存储位置,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,目标第一位置确定模块401,包括:
第一位置对应列确定子模块,用于若第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M列位置,将M列位置确定为第一目标属性项位置,M为大于或等于1的自然数;
相应地,目标第二位置确定模块402,包括:
第二位置对应列确定子模块,用于若第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N列位置,将N列位置确定为第二目标属性项位置,N为大于或等于1的自然数;
位置关联模块403,包括:
列与列关联子模块,用于将M列位置与N列位置建立关联。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,数据关联模块404,具体用于将M列位置存储的属性内容与N行位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于等于1的自然数。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,目标第一位置确定模块401,包括:
第一位置对应列确定子模块,用于若第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M列位置,将M列位置确定为第一目标属性项位置,M为大于或等于1的自然数;
目标第二位置确定模块402,包括:
第二位置对应行确定子模块,用于若第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N行位置,将N行位置确定为第二目标属性项位置,N为大于或等于1的自然数;
位置关联模块403,包括:
列与行关联子模块,用于将M列位置与N行位置建立关联。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,数据关联模块404,具体还用于将M列位置存储的属性内容与N行位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于等于1的自然数。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,目标第一位置确定模块401,包括:
第一位置对应行确定子模块,用于若第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个第一数据库表的每个第一目标属性项存储所有属性内容的位置形成M行位置,将M行位置确定为第一目标属性项位置,M为大于或等于1的自然数;
目标第二位置确定模块402,包括:
第二位置对应行确定子模块,用于若第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个第二数据库表的每个第二目标属性项存储所有属性内容的位置形成N行位置,将N行位置确定为第二目标属性项位置,N为大于或等于1的自然数;
位置关联模块403,包括:
行与行关联子模块,用于将M行位置与N行位置建立关联。
可选地,在本发明关联异构系统同义数据的装置的一种实施例中,数据关联模块404,具体还用于将M行位置存储的属性内容与N行位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据,其中,M、N均为大于或等于1的自然数。
为达到上述发明目的,本发明实施例还公开了一种电子设备,如图5所示。图5为本发明实施例的一种电子设备结构示意图,包括存储器501和处理器502
存储器501,用于储存可执行程序代码;
处理器502,用于读取存储器中存储的可执行程序代码,以实现如下方法步骤:
在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在第一位置,将第一位置所在的第一数据库的表项确定为第一目标属性项,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
在第二异构系统的各数据库表中,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置,若存在第二位置,将第二位置所在的第二数据库表的表项确定为第二目标属性项,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
将第一目标属性项位置与第二目标属性项位置建立关联;
将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据。
上述存储器501可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器501还可以是至少一个位于远离处理器502的存储装置。
上述的处理器502可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例提供的一种电子设备,可以实现快速、准确的识别并关联异构系统间的同义数据。具体为,在第一异构系统各数据库表中以及第二异构系统各数据库表中,分别判断是否存在存储有预设样本集中各数据对象同一属性项的属性内容存储的位置,如果都存在,进而将存储位置所在的数据库表项确定为目标属性项,将目标属性项对应存储所有属性内容的位置确定为目标属性项位置,以及将目标属性项位置关联,实现将多个异构系统中,数据库表的具体表项中所有属性内容的存储位置建立关联。本发明只需要通过查找预设样本集中多个数据对象的同一属性项属性内容的存储位置,即可发现建立数据库列表中位置关联,则本发明实施例在查找以及建立关联上,比起现有技术的人工阅读查找全部数据,以及将多个异构系统不同数据格式的全部数据转换成相同格式的全部数据,大大提高了速率。
为达到上述发明目的,本发明实施例还公开了一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时,实现如下步骤:
在第一异构系统的各数据库表中,判断是否有第一数据库表,第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在第一位置,将第一位置所在的第一数据库的表项确定为第一目标属性项,将第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
在第二异构系统的各数据库表中,判断是否有第二数据库表,第二数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第二位置,若存在第二位置,将第二位置所在的第二数据库表的表项确定为第二目标属性项,将第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
将第一目标属性项位置与第二目标属性项位置建立关联;
将第一目标属性项位置存储的属性内容,与第二目标属性项位置存储的属性内容,关联为第一异构系统与第二异构系统的同义数据。
本发明实施例提供的一种计算机可读存储介质,可以实现快速、准确的识别并关联异构系统间的同义数据。具体为,在第一异构系统各数据库表中以及第二异构系统各数据库表中,分别判断是否存在存储有预设样本集中各数据对象同一属性项的属性内容存储的位置,如果都存在,进而将存储位置所在的数据库表项确定为目标属性项,将目标属性项对应存储所有属性内容的位置确定为目标属性项位置,以及将目标属性项位置关联,实现将多个异构系统中,数据库表的具体表项中所有属性内容的存储位置建立关联。本发明只需要通过查找预设样本集中多个数据对象的同一属性项属性内容的存储位置,即可发现建立数据库列表中位置关联,则本发明实施例在查找以及建立关联上,比起现有技术的人工阅读查找全部数据,以及将多个异构系统不同数据格式的全部数据转换成相同格式的全部数据,大大提高了速率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (24)
1.一种关联异构系统同义数据的方法,其特征在于,包括:
在第一异构系统的各数据库表中,判断是否有第一数据库表,所述第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在所述第一位置,将所述第一位置所在的第一数据库的表项确定为第一目标属性项,将所述第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
在第二异构系统的各数据库表中,判断是否有第二数据库表,所述第二数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第二位置,若存在所述第二位置,将所述第二位置所在的第二数据库表的表项确定为第二目标属性项,将所述第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,所述每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
将所述第一目标属性项位置与所述第二目标属性项位置建立关联;
将所述第一目标属性项位置存储的属性内容,与所述第二目标属性项位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据。
2.根据权利要求1所述的方法,其特征在于,所述在第一异构系统的各数据库表中,判断是否有第一数据库表,所述第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置之前,所述方法还包括:
将所述预设样本集中多个数据对象,存储在所述第一异构系统的各数据库表的对应位置;
将所述预设样本集中多个数据对象,存储在所述第二异构系统的各数据库表的对应位置;
监测所述第一异构系统的各数据库表的对应位置和所述第二异构系统的各数据库表的对应位置。
3.根据权利要求2所述的方法,其特征在于,在所述监测所述第一异构系统的各数据库表的对应位置和所述第二异构系统的各数据库表的对应位置之后,所述方法还包括:
将所述第一数据库表与所述第二数据库表建立关联。
4.根据权利要求3所述的方法,其特征在于,所述将所述第一数据库表与所述第二数据库表建立关联,包括:
当查找到所述第一数据库表为M个、所述第二数据库表为N个时,建立所述第一异构系统的M个所述第一数据库表,与所述第二异构系统的N个所述第二数据库表的关联,其中,所述M、N均为大于或等于1的自然数。
5.根据权利要求1所述的方法,其特征在于,所述在第一异构系统的各数据库表中,判断是否有第一数据库表,所述第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,包括:
在所述第一异构系统的各数据库表中,通过查找所述预设样本集中各数据对象的所述第一属性项的属性内容的存储位置,判断是否有第一数据库表,所述第一数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第一位置;
相应的,所述在第二异构系统的各数据库表中,判断是否有第二数据库表,所述第二数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第二位置,包括:
在所述第二异构系统的各数据库表中,通过查找所述预设样本集中各数据对象的所述第一属性项的属性内容的存储位置,判断是否有第二数据库表,所述第二数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第二位置。
6.根据权利要求4所述的方法,其特征在于,所述将所述第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若所述第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M列位置,将所述M列位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述将所述第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若所述第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N列位置,将所述N列位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述将所述第一目标属性项位置与所述第二目标属性项位置建立关联,包括:
将所述M列位置与所述N列位置建立关联。
7.根据权利要求6所述的方法,其特征在于,所述将所述第一目标属性项位置存储的属性内容,与所述第二目标属性项位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,包括:
将所述M列位置存储的属性内容与所述N列位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于等于1的自然数。
8.根据权利要求4所述的方法,其特征在于,所述将所述第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若所述第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M列位置,将所述M列位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述将所述第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若所述第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N行位置,将所述N行位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述将所述第一目标属性项位置与所述第二目标属性项位置建立关联,包括:
将所述M列位置与所述N行位置建立关联。
9.根据权利要求8所述的方法,其特征在于,所述将所述第一目标属性项位置存储的属性内容,与所述第二目标属性项位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,包括:
将所述M列位置存储的属性内容与所述N行位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于等于1的自然数。
10.根据权利要求4所述的方法,其特征在于,所述将所述第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置,包括:
若所述第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M行位置,将所述M行位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述将所述第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,包括:
若所述第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N行位置,将所述N行位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述将所述第一目标属性项位置与所述第二目标属性项位置建立关联,包括:
将所述M行位置与所述N行位置建立关联。
11.根据权利要求10所述的方法,其特征在于,所述将所述第一目标属性项位置存储的属性内容,与所述第二目标属性项位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,包括:
将所述M行位置存储的属性内容与所述N行位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于或等于1的自然数。
12.一种关联异构系统同义数据的装置,其特征在于,包括:
目标第一位置确定模块,用于在第一异构系统的各数据库表中,判断是否有第一数据库表,所述第一数据库表存在存储有预设样本集中每个数据对象的第一属性项的属性内容的第一位置,若存在所述第一位置,将所述第一位置所在的第一数据库的表项确定为第一目标属性项,将所述第一目标属性项所存储的所有属性内容的位置确定为第一目标属性项位置;
目标第二位置确定模块,用于在第二异构系统的各数据库表中,判断是否有第二数据库表,所述第二数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第二位置,若存在所述第二位置,将所述第二位置所在的第二数据库表的表项确定为第二目标属性项,将所述第二目标属性项所存储的所有属性内容的位置确定为第二目标属性项位置,其中,所述每个数据对象具有多个属性项,并且,每个数据库表的各属性项互不相同;
位置关联模块,用于将所述第一目标属性项位置与所述第二目标属性项位置建立关联;
数据关联模块,用于将所述第一目标属性项位置存储的属性内容,与所述第二目标属性项位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第一存储模块,用于将所述预设样本集中多个数据对象,存储在所述第一异构系统的各数据库表的对应位置;
第二存储模块,用于将所述预设样本集中多个数据对象,存储在所述第二异构系统的各数据库表的对应位置;
监测模块,用于监测所述第一异构系统的各数据库表的对应位置和所述第二异构系统的各数据库表的对应位置。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
列表关联模块,用于将所述第一数据库表与所述第二数据库表建立关联。
15.根据权利要求14所述的装置,其特征在于,所述列表关联模块,具体用于当查找到所述第一数据库表为M个、所述第二数据库表为N个时,建立所述第一异构系统的M个所述第一数据库表,与所述第二异构系统的N个所述第二数据库表的关联,其中,所述M、N均为大于或等于1的自然数。
16.根据权利要求12所述的装置,其特征在于,所述目标第一位置确定模块,具体用于在所述第一异构系统的各数据库表中,通过查找所述预设样本集中各数据对象的所述第一属性项的属性内容的存储位置,判断是否有第一数据库表,所述第一数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第一位置;
相应的,所述目标第二位置确定模块,具体用于在所述第二异构系统的各数据库表中,通过查找所述预设样本集中各数据对象的所述第一属性项的属性内容的存储位置,判断是否有第二数据库表,所述第二数据库表存在存储有所述预设样本集中每个数据对象的所述第一属性项的属性内容的第二位置。
17.根据权利要求15所述的装置,其特征在于,所述目标第一位置确定模块,包括:
第一位置对应列确定子模块,用于若所述第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M列位置,将所述M列位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述目标第二位置确定模块,包括:
第二位置对应列确定子模块,用于若所述第二异构系统的各数据库表中的表项以列的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N列位置,将所述N列位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述位置关联模块,包括:
列与列关联子模块,用于将所述M列位置与所述N列位置建立关联。
18.根据权利要求17所述的装置,其特征在于,所述数据关联模块,具体用于将所述M列位置存储的属性内容与所述N列位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于等于1的自然数。
19.根据权利要求15所述的装置,其特征在于,所述目标第一位置确定模块,包括:
第一位置对应列确定子模块,用于若所述第一异构系统的各数据库表中的表项以列的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M列位置,将所述M列位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述目标第二位置确定模块,包括:
第二位置对应行确定子模块,用于若所述第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N行位置,将所述N行位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述位置关联模块,包括:
列与行关联子模块,用于将所述M列位置与所述N行位置建立关联。
20.根据权利要求19所述的装置,其特征在于,所述数据关联模块,具体还用于将所述M列位置存储的属性内容与所述N行位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于等于1的自然数。
21.根据权利要求15所述的装置,其特征在于,所述目标第一位置确定模块,包括:
第一位置对应行确定子模块,用于若所述第一异构系统的各数据库表中的表项以行的形式存储所有属性内容时,M个所述第一数据库表的每个所述第一目标属性项存储所有属性内容的位置形成M行位置,将所述M行位置确定为所述第一目标属性项位置,所述M为大于或等于1的自然数;
相应地,所述目标第二位置确定模块,包括:
第二位置对应行确定子模块,用于若所述第二异构系统的各数据库表中的表项以行的形式存储所有属性内容时,N个所述第二数据库表的每个所述第二目标属性项存储所有属性内容的位置形成N行位置,将所述N行位置确定为所述第二目标属性项位置,所述N为大于或等于1的自然数;
所述位置关联模块,包括:
行与行关联子模块,用于将所述M行位置与所述N行位置建立关联。
22.根据权利要求21所述的装置,其特征在于,所述数据关联模块,具体还用于将所述M行位置存储的属性内容与所述N行位置存储的属性内容,关联为所述第一异构系统与所述第二异构系统的同义数据,其中,所述M、N均为大于或等于1的自然数。
23.一种电子设备,其特征在于,包括存储器和处理器;
所述存储器用于储存可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码,以执行权利要求1-11任一所述的方法步骤。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-11任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710739310.9A CN108573010B (zh) | 2017-08-25 | 2017-08-25 | 关联异构系统同义数据的方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710739310.9A CN108573010B (zh) | 2017-08-25 | 2017-08-25 | 关联异构系统同义数据的方法、装置、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108573010A CN108573010A (zh) | 2018-09-25 |
CN108573010B true CN108573010B (zh) | 2020-06-19 |
Family
ID=63576321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710739310.9A Active CN108573010B (zh) | 2017-08-25 | 2017-08-25 | 关联异构系统同义数据的方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108573010B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109656970A (zh) * | 2018-11-20 | 2019-04-19 | 北京松鼠山科技有限公司 | 面向异构数据的数据关联方法和装置 |
CN113468186B (zh) * | 2021-09-02 | 2021-12-21 | 四川大学华西医院 | 数据表主键关联方法、装置、计算机设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102141992A (zh) * | 2010-01-28 | 2011-08-03 | 广州市西美信息科技有限公司 | 多维数据库存储及查询的方法 |
CN102609421A (zh) * | 2011-01-24 | 2012-07-25 | 阿里巴巴集团控股有限公司 | 数据查询方法及装置 |
CN105045830A (zh) * | 2015-06-30 | 2015-11-11 | 北京奇艺世纪科技有限公司 | 一种数据关联方法及装置 |
CN105550220A (zh) * | 2015-12-03 | 2016-05-04 | 浪潮通用软件有限公司 | 一种异构系统的取数的方法及装置 |
CN105550375A (zh) * | 2016-02-01 | 2016-05-04 | 北京天广汇通科技有限公司 | 一种异构数据的整合方法及系统 |
CN106777261A (zh) * | 2016-12-28 | 2017-05-31 | 深圳市华傲数据技术有限公司 | 基于多源异构数据集的数据查询方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090012928A1 (en) * | 2002-11-06 | 2009-01-08 | Lussier Yves A | System And Method For Generating An Amalgamated Database |
TW200614017A (en) * | 2004-10-26 | 2006-05-01 | Via Tech Inc | Instantaneous integrated system and method of heterogeneous databases |
US8554801B2 (en) * | 2009-07-10 | 2013-10-08 | Robert Mack | Method and apparatus for converting heterogeneous databases into standardized homogeneous databases |
US9710534B2 (en) * | 2013-05-07 | 2017-07-18 | International Business Machines Corporation | Methods and systems for discovery of linkage points between data sources |
US20160019251A1 (en) * | 2014-07-17 | 2016-01-21 | Lexmark International Technology, SA | System and Methods for Efficiently Storing Heterogeneous Data Records Having Low Cardinality |
-
2017
- 2017-08-25 CN CN201710739310.9A patent/CN108573010B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102141992A (zh) * | 2010-01-28 | 2011-08-03 | 广州市西美信息科技有限公司 | 多维数据库存储及查询的方法 |
CN102609421A (zh) * | 2011-01-24 | 2012-07-25 | 阿里巴巴集团控股有限公司 | 数据查询方法及装置 |
CN105045830A (zh) * | 2015-06-30 | 2015-11-11 | 北京奇艺世纪科技有限公司 | 一种数据关联方法及装置 |
CN105550220A (zh) * | 2015-12-03 | 2016-05-04 | 浪潮通用软件有限公司 | 一种异构系统的取数的方法及装置 |
CN105550375A (zh) * | 2016-02-01 | 2016-05-04 | 北京天广汇通科技有限公司 | 一种异构数据的整合方法及系统 |
CN106777261A (zh) * | 2016-12-28 | 2017-05-31 | 深圳市华傲数据技术有限公司 | 基于多源异构数据集的数据查询方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108573010A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Azeroual et al. | Analyzing data quality issues in research information systems via data profiling | |
US8429220B2 (en) | Data exchange among data sources | |
Barateiro et al. | A survey of data quality tools. | |
US8943059B2 (en) | Systems and methods for merging source records in accordance with survivorship rules | |
US20120072464A1 (en) | Systems and methods for master data management using record and field based rules | |
US9785725B2 (en) | Method and system for visualizing relational data as RDF graphs with interactive response time | |
US8713041B2 (en) | Peer to peer (P2P) missing fields and field valuation feedback | |
EP3210140A1 (en) | Identification of codable sections in medical documents | |
US10127292B2 (en) | Knowledge catalysts | |
CN111370132B (zh) | 电子文件的解析方法及装置、计算机设备、存储介质 | |
US7912864B2 (en) | Retrieving collected data mapped to a base dictionary | |
CN108573010B (zh) | 关联异构系统同义数据的方法、装置、电子设备及介质 | |
US20150347681A1 (en) | System and method for health information exchange and analytics | |
CN111899822A (zh) | 医疗机构数据库构建方法、查询方法、装置、设备和介质 | |
US9507764B2 (en) | Computerised data entry form processing | |
Lim et al. | The integration of relationship instances from heterogeneous databases | |
Saiod et al. | Electronic health records: benefits and challenges for data quality | |
CN117116416A (zh) | 医嘱用药审核方法、装置、电子设备及存储介质 | |
Azeroual et al. | Solving problems of research information heterogeneity during integration–using the European CERIF and German RCD standards as examples | |
Botsis et al. | Application of natural language processing and network analysis techniques to post-market reports for the evaluation of dose-related anti-thymocyte globulin safety patterns | |
CN115481105A (zh) | 数据管理方法、装置、电子设备及存储介质 | |
Georgieva et al. | Tendencies in Software Engineering Education | |
Ashish et al. | The GAAIN entity mapper: an active-learning system for medical data mapping | |
Maryum et al. | Hospital management society: A framework based on fuzzy logic and association rule mining towards well-being society | |
Barboi et al. | Client registries: identifying and linking patients |
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 |