CN109829012B - 数据同步的方法和装置 - Google Patents
数据同步的方法和装置 Download PDFInfo
- Publication number
- CN109829012B CN109829012B CN201811522527.5A CN201811522527A CN109829012B CN 109829012 B CN109829012 B CN 109829012B CN 201811522527 A CN201811522527 A CN 201811522527A CN 109829012 B CN109829012 B CN 109829012B
- Authority
- CN
- China
- Prior art keywords
- target
- field
- source
- database
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 28
- 239000013598 vector Substances 0.000 claims description 46
- 230000001360 synchronised effect Effects 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 4
- 230000010354 integration Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000002441 reversible effect Effects 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000013515 script Methods 0.000 description 3
- 206010020751 Hypersensitivity Diseases 0.000 description 2
- 208000026935 allergic disease Diseases 0.000 description 2
- 230000007815 allergy Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000037213 diet Effects 0.000 description 2
- 235000005911 diet Nutrition 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 206010011985 Decubitus ulcer Diseases 0.000 description 1
- 208000004210 Pressure Ulcer Diseases 0.000 description 1
- 206010053615 Thermal burn Diseases 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000007115 recruitment Effects 0.000 description 1
Images
Landscapes
- Medical Treatment And Welfare Office Work (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据同步的方法和装置,所述方法包括如下步骤:查找源数据库中与一个或多个目标字段对应的源字段,其中,一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,目标数据库的数据字典中的每个字段对应唯一的键值;确定一个或多个目标字段的键值与相应源字段之间的关联关系,源字段是查找到的目标字段对应的源字段;基于关联关系,将源数据库中与一个或多个目标字段对应的源字段的数据同步到目标数据库中。本申请实现了一种可兼容各种异构信息系统的数据同步方式,提高了现场实施人员的工作效率。
Description
技术领域
本申请涉及软件领域,尤其涉及一种数据同步的方法和装置。
背景技术
医疗信息系统(hospital Information System,HIS)是现代化医院运营的必要技术支撑和基础设施。为了提供更好的医疗服务,随着计算机互联网的发展,医院引进了很多现代化医疗设备。这些现代化医疗设备需要与医院的医疗信息系统对接,以获取一些基本的医疗信息。但是,由于不同医院的医疗信息系统,采用的数据库技术不同,导致这些现代化医疗设备与不同医院的医疗信息系统对接的时候,对现场实施人员的门槛要求比较高。一般需要具有一定数据库知识储备和代码能力的现场实施人员,现场编写相应的脚本代码来读取医院信息系统的数据。这种数据同步方式,大大影响了工作效率。
发明内容
为了解决上述问题,本申请提出了一种数据同步的方法,方法包括如下步骤:查找源数据库中与一个或多个目标字段对应的源字段,其中,一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,目标数据库的数据字典中的每个字段对应唯一的键值;确定一个或多个目标字段的键值与相应源字段之间的关联关系,源字段是查找到的目标字段对应的源字段;基于关联关系,将源数据库中与一个或多个目标字段对应的源字段的数据同步到目标数据库中。
在一个示例中,在确定目标数据库中待同步数据对应的目标字段之前,方法还包括:配置目标数据库的数据字典,目标数据库的数据字典中包含至少一个字段,每个字段具有不同的含义且使用唯一的键值进行唯一标识。
在一个示例中,配置目标数据库的数据字典,包括:获取源数据库的字段;在目标数据库中未查找到与源数据库的字段对应的目标字段情况下,将源数据库的字段添加到目标数据库的数据字典中,并为源数据库的字段设置唯一的键值。
在一个示例中,配置目标数据库的数据字典,包括:配置目标数据库的数据字典中每个字段的如下至少一种属性:是否来自源数据库、源数据库的标识、是否显示字段、字段类型。
在一个示例中,查找源数据库中与目标字段对应的源字段,包括:获取目标字段的目标字段名,以及源字段的源字段名;计算目标字段名与源字段名的相似度;将相似度大于阈值的源字段名对应的源字段作为与目标字段对应的源字段;其中,计算目标字段名与源字段名的相似度的公式为:
其中,
Ftarget=(ftarget,1,ftarget,2,…,ftarget,k,…ftarget,N);
Foriginal=(foriginal,1,foriginal,2,…,foriginal,k,…foriginal,N);
其中,Sim(Ftarget,Foriginal)表示目标字段名与源字段名的相似度;Ftarget表示目标字段名对应的文本向量,ftarget,k表示目标字段名对应的第k个文本特征项,wtarget,k表示目标字段名对应的第k个文本特征项ftarget,k的权重;Foriginal表示源字段名对应的文本向量,foriginal,k表示源字段名对应的第k个文本特征项,woriginal,k表示源字段名对应的第k个文本特征项foriginal,k的权重;N表示从目标字段名或源字段名中提取的文本特征项的最大数量。
在一个示例中,在计算目标字段名与源字段名的相似度之前,方法还包括:采用逆向最大匹配算法对目标字段名和源字段名分别进行分词处理,得到目标字段名和源字段名对应的多个特征词;其中,每个特征词对应一个文本特征项。
在一个示例中,在将相似度大于阈值的源字段名对应的源字段作为与目标字段对应的源字段之后,方法还包括:将每个目标字段对应的源字段的源字段名添加到每个目标字段对应的字段名称库中,其中,每个目标字段对应的字段名称库中包含目标字段对应的多个字段名,多个字段名具有相同的键值;其中,每个目标字段对应的字段名称库用于目标数据库同步其他的源数据库中的数据。
在一个示例中,查找源数据库中与目标字段对应的源字段,包括:获取目标字段的数据特征向量,以及源数据库中源字段的数据特征向量,目标字段的数据特征向量和源字段的数据特征向量均为多维向量;计算目标字段的数据特征向量和源字段的数据特征向量的加权欧式距离;将欧式距离最小的源字段确定为源数据库中与目标字段对应的源字段;其中,加权欧式距离的公式为:
其中,
Xtarget=(xtarget,1,xtarget,2,…,xtarget,k,…xtarget,M);
Xoriginal=(xoriginal,1,xoriginal,2,…,xoriginal,k,…xoriginal,N);
其中,Distance(dtarget,j,doriginal,j)表示目标字段的数据特征向量与源字段的数据特征向量之间的欧式距离;Xtarget表示目标字段的数据特征向量,dtarget,j表示目标字段的第j个数据特征;Xoriginal表示源字段的数据特征向量,doriginal,j表示源字段的第j个数据特征;Sj表示方差;M表示从目标字段名或源字段名中提取的数据特征的最大数量。
在一个示例中,在基于关联关系,将源数据库中与目标字段对应的源字段的数据同步到目标数据库中之后,方法还包括:获取目标数据库中待显示的至少一个字段;输出目标数据库中待显示的至少一个字段的数据。
在一个示例中,基于关联关系,将源数据库中与目标字段对应的源字段的数据同步到目标数据库中,包括:源数据库通过如下任意一种或多种方式向目标数据库提供与目标字段对应的源字段的数据:视图、Web服务、集成平台。
在一个示例中,源数据库为医院内各种信息系统的数据库。
另一方面,本申请还提出了一种数据同步的装置,装置:查找单元,用于查找源数据库中与一个或多个目标字段对应的源字段,其中,一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,目标数据库的数据字典中的每个字段对应唯一的键值;确定单元,用于确定一个或多个目标字段的键值与相应源字段之间的关联关系,源字段是查找到的目标字段对应的源字段;同步单元,用于基于关联关系,将源数据库中与一个或多个目标字段对应的源字段的数据同步到目标数据库中。
通过本申请提出数据同步方式能够带来如下有益效果:
1.基于预先配置的通用数据字典(即目标数据库的数据字典),可以提供一种可兼容各种异构信息系统的数据同步方式,以医院信息系统为例,可以实现根据不同医院的需求,实现目标数据库与不同厂商医院信息系统的数据同步,以获取相应的医疗数据,实现了不同厂商医院信息系统的互通,提高现场实施人员的实施效率;
2.目标数据库的数据字典可以重复使用,为后期医疗设备维护提供的较好的支持和扩展。
3.减少了现场维护难度,降低了现场实施人员的门槛要求。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种医院信息数据的同步系统示意图;
图2为本申请实施例提供的一种数据同步方法流程图。
具体实施方式
为了更清楚的阐释本申请的整体构思,下面结合说明书附图以示例的方式进行详细说明。
不同的医院信息系统,由于采用不同的异构软、硬件平台,构成了异构数据源。随着各种现代化医疗设备在医院的普及,为了实现现代化医疗设备与医院信息系统的数据同步处理,需要这些医疗设备的现场实施人员在部署时现场编写SQL(Structured QueryLanguage,结构化查询语言)脚本来读取HIS数据,导致医疗设备与医院信息系统之间的数据同步配置工作需要较长的时间,且需要现场实施人员有一定的数据库知识储备和代码能力,要求现场实施人员的门槛极高。在人手不充足的情况下,多个医院同时部署,会导致配置效率低下。
另外,如果多个医院同时部署,现场实施人员需要一个医院接着一个医院进行部署,效率极低,较大时间花费在了等待了,造成了人力和财力的浪费。
为了解决现有医疗设备与医院信息系统之间进行数据同步时,现场实施难度高、效率低下的问题。本申请提供了一种兼容对接各种厂商HIS的方法,在医疗设备等产品出厂时,内置一份字段配置表的数据字典,现场实施人员只需要根据医院要求,设置出厂内置的数据字典中哪些字段需要显示即可。在配置好字段以后,针对不同厂商HIS的数据库,选择相应的数据源(包括但不限于(例如,DB2、ORACLE、SQL SEVER等数据库)匹配连接,以读取相应的HIS数据,并基于预先配置的字段以及字段反射和映射机制,将相应的HIS数据同步到本地数据库。
例如,图1为本申请实施例提供的一种医院信息数据的同步系统示意图,如图1所示,该系统包括:医院信息系统101、医疗设备主机102、至少一个医疗设备分机104,其中,医疗设备主机102与医疗设备分机之间通过局域网103连接。
其中,医院信息系统101向医疗设备主机102提供数据的方式可以是视图,也可以是Web service。
在部署医疗设备的时候,现场实施人员可以根据医院的需求(例如,医院护理部或护理单元护士长提出的要求),确定待同步数据的字段,医院信息系统的厂商一般会提供一份HIS数据源的说明文档,该说明文档中包含了HIS数据源的字段含义。
在同步数据时,需要先将医院信息系统101的数据读取到一个中间表(临时表)中,导入中间表的时候可以通过SQL语句实现。基于HIS厂商提供的数据源的说明文档,现场实施人员只需要通过修改SQL语句将医院信息系统101上的数据读取到医疗设备主机102的本地数据库的临时表中,在写入临时表中时,根据历史数据源说明文档将一个临时的键值(Key值)写入临时表中。然后执行同步比对程序。比对临时表中的临时Key值是否等于医疗设备主机的数据库对应的预先配置的数据字典中字段的唯一Key值,只有完全相等的情况下,将该临时Key值对应的字段的数据写入医疗设备主机102的数据库中。当待同步数据的全部字段都比对完成后,医疗设备主机102执行下发操作,将同步的数据显示到各个医疗设备分机104中。
容易注意的是,每个医院可以根据实际展示效果,确定哪些字段显示,哪些字段不显示。
在上述应用场景下,本申请的实施例公开了一种数据同步的方法,如图2所示,包括如下步骤:
步骤S201,配置目标数据库的数据字典,目标数据库的数据字典中包含至少一个字段,每个字段具有不同的含义且使用唯一的键值进行唯一标识。
作为一种可选的实施例,上述目标数据库可以是与医院信息系统进行数据同步的任意一种设备,例如,医院内为医护人员或患者提供服务的各种医疗设备。可选地,该医疗设备包括主机和多个分机。通过主机来向各个分机下发相应的数据。由此,现场实施人员只需要在部署医疗设备主机的时候,对医疗设备主机的数据库进行数据同步配置即可。
具体地,上述数据字典可以预先配置的一个包含多个字段的数据库说明文档,该数据字典中,为每个字段设置唯一的键值。
例如,表1为目标数据库(医疗设备的数据库)的数据字典。在目标数据库的数据字典中,为每个字段设置唯一的键值,以便通过每个键值同步源数据库中相应字段的数据。
表1目标数据库的数据字典
序号 | 键值 | 字段名 | 是否显示 | 是否来自HIS系统 | 字段类型 |
1 | P1 | 过敏 | 1 | 1 | 过敏 |
2 | P2 | 饮食 | 1 | 1 | 饮食 |
3 | P3 | 手术时间 | 1 | 1 | 扩展 |
4 | P4 | 诊断 | 1 | 1 | 扩展 |
5 | P5 | 陪护 | 0 | 1 | 扩展 |
6 | P6 | 隔离 | 0 | 1 | 预警 |
7 | P7 | 防压疮 | 1 | 1 | 预警 |
8 | P8 | 防坠床 | 1 | 1 | 预警 |
9 | P9 | 防跌倒 | 1 | 1 | 预警 |
10 | P10 | 记出入量 | 1 | 1 | 预警 |
11 | P11 | 病情 | 1 | 1 | 扩展 |
12 | P12 | 余额 | 1 | 1 | 余额 |
13 | P13 | 已缴费金额 | 0 | 1 | 扩展 |
14 | P14 | 已支付金额 | 0 | 1 | 扩展 |
15 | P15 | 绝对卧床 | 1 | 1 | 预警 |
16 | P16 | 心率监测 | 1 | 1 | 预警 |
17 | P17 | VTE | 1 | 1 | 预警 |
18 | P18 | 重点观察 | 1 | 1 | 预警 |
19 | P19 | 小心烫伤 | 1 | 1 | 预警 |
20 | P20 | 防导管滑脱 | 1 | 1 | 预警 |
21 | P21 | 二维码 | 0 | 1 | 二维码 |
22 | P22 | 费别 | 1 | 1 | 扩展 |
23 | PATIENT_ID | 患者ID | 1 | 1 | 基础 |
24 | INP_NO | 住院号 | 1 | 1 | 基础 |
25 | NURSE_LEVEL | 护理等级 | 1 | 1 | 基础 |
26 | IN_FQCY | 住院次数 | 1 | 1 | 基础 |
27 | PATIENT_NAME | 病人姓名 | 1 | 1 | 基础 |
28 | PATIENT_SEX | 性别 | 1 | 1 | 基础 |
29 | PATIENT_BIRTHDAY | 生日 | 1 | 1 | 基础 |
30 | DOCTOR | 主治医生 | 1 | 1 | 基础 |
31 | NURSE | 责任护士 | 1 | 1 | 基础 |
32 | IN_TIME | 入院时间 | 1 | 1 | 基础 |
33 | PAT_AGE | 年龄 | 1 | 1 | 基础 |
可选地,如表1所示,在配置目标数据库的数据字典的时候,还可以配置目标数据库的数据字典中每个字段的如下至少一种属性:是否来自源数据库、源数据库的标识、是否显示字段、字段类型;其中,源数据库的标识可以是但不限于医院信息系统HIS、实验室信息系统LIS、医学影像存档与通讯系统PACS等;字段类型包括如下至少之一:基础字段、扩展字段和预警字段。其中,基础字段可以是构成目标数据库的基础的字段;扩展字段可以是在基础字段的基础上扩展出来的字段;预警字段可以是用于提示预警信息的字段。可选地,还可以是余额、二维码等其他特殊类型的字段。
需要说明的是,预先配置的数据字典中的字段,可以是开发人员预先设定的,也可以是根据待同步数据的源数据库(例如,医院信息系统)中的字段配置的。在根据源数据库的字段配置数据字典的时候,具体步骤为:获取源数据库的字段;在目标数据库中未查找到与源数据库的字段对应的目标字段情况下,将源数据库的字段添加到目标数据库的数据字典中,并为源数据库的字段设置唯一的键值。
容易注意的是,不同的源数据库中,对于同一字段的设置的字段名可能存在差异,例如,A医院对患者的住院号的字段命名为“患者ID”、B医院对患者的住院号的字段命名为“病人ID”、C医院对患者的住院号的字段命名为“患者号码”、D医院对患者的住院号的字段命名为“病人号码”。为了兼容不同厂商的HIS系统,本申请通过字段的唯一键值来标识每个字段,可以起到唯一标识的作用。
步骤S202,接收用户指令,其中,所述用户指令用于从目标数据库的数据字典中选择一个或多个目标字段。
具体地,用户(设备现场实施人员)可以根据每个医院的需求,确定医疗设备的数据库(即目标数据库)中需要待同步数据的一个或多个字段,目标数据库的数据字典中的每个字段对应唯一的键值。
步骤S203,查找源数据库中与一个或多个目标字段对应的源字段。
可选地,上述源数据库为医院内各种信息系统的数据库。在根据每个医院的需求,确定待同步数据的一个或多个字段后,基于每个字段的唯一键值,从医院信息系统中查找对应的源字段(即源数据库中的字段)。
需要说明的是,在查找源数据库中与目标字段对应的源字段的时候,可以根据每个字段的字段名来进行查找,也可以根据每个字段对应的字段值的数据特征来进行查找。
作为第一种可选的实施方式,基于每个字段的字段名,采用自然语言识别技术,来查找源数据库中与目标字段对应的字段,具体包括:获取目标字段的目标字段名,以及源字段的源字段名;计算目标字段名与源字段名的相似度;将相似度大于阈值的源字段名对应的源字段作为与目标字段对应的源字段;其中,计算目标字段名与源字段名的相似度的公式为:
其中,
Ftarget=(ftarget,1,ftarget,2,…,ftarget,k,…ftarget,N);
Foriginal=(foriginal,1,foriginal,2,…,foriginal,k,…foriginal,N);
其中,Sim(Ftarget,Foriginal)表示目标字段名与源字段名的相似度;Ftarget表示目标字段名对应的文本向量,ftarget,k表示目标字段名对应的第k个文本特征项,wtarget,k表示目标字段名对应的第k个文本特征项ftarget,k的权重;Foriginal表示源字段名对应的文本向量,foriginal,k表示源字段名对应的第k个文本特征项,woriginal,k表示源字段名对应的第k个文本特征项foriginal,k的权重;N表示从目标字段名或源字段名中提取的文本特征项的最大数量。
可选地,在计算目标字段名与源字段名的相似度之前,还可以采用逆向最大匹配算法对目标字段名和源字段名分别进行分词处理,得到目标字段名和源字段名对应的多个特征词;其中,每个特征词对应一个文本特征项。
需要说明的是,在将相似度大于阈值的源字段名对应的源字段作为与目标字段对应的源字段之后,还可以将每个目标字段对应的源字段的源字段名添加到每个目标字段对应的字段名称库中,其中,每个目标字段对应的字段名称库中包含目标字段对应的多个字段名,多个字段名具有相同的键值;其中,每个目标字段对应的字段名称库用于目标数据库同步其他的源数据库中的数据。将源数据库中,未在目标数据库的数据字典中查找到的字段,添加到目标数据库的数据字典中,可以丰富目标数据库的数据字典中包含的字段,以便兼容更多厂商的HIS系统。
通过上述第一种方式,采用自然语言识别技术,实现了自动根据字段名来查找源数据库中与目标字段对应的字段,无需人为配置,降低了现场实施难度。
作为第二种可选的实施方式,基于每个字段的字段值的数据特征,在查找源数据库中与目标字段对应的源字段的时候,可以获取目标字段的数据特征向量,以及源数据库中源字段的数据特征向量,目标字段的数据特征向量和源字段的数据特征向量均为多维向量;计算目标字段的数据特征向量和源字段的数据特征向量的加权欧式距离;将欧式距离最小的源字段确定为源数据库中与目标字段对应的源字段;其中,加权欧式距离的公式为:
其中,
Xtarget=(xtarget,1,xtarget,2,…,xtarget,k,…xtarget,M);
Xoriginal=(xoriginal,1,xoriginal,2,…,xoriginal,k,…xoriginal,N);
其中,Distance(dtarget,j,doriginal,j)表示目标字段的数据特征向量与源字段的数据特征向量之间的欧式距离;Xtarget表示目标字段的数据特征向量,dtarget,j表示目标字段的第j个数据特征;Xoriginal表示源字段的数据特征向量,doriginal,j表示源字段的第j个数据特征;Sj表示方差;M表示从目标字段名或源字段名中提取的数据特征的最大数量。
通过上述第二种实施方式,实现了根据每个字段的数据特征来进行查找的目的,避免了两个数据库中,由于同一字段的命名差异较大,而导致为同一字段设置两个键值的情况发生。例如,A医院的“患者ID”与D医院的“病人号码”,如果仅通过自然语言技术,根据字段名来查找的时候,容易识别为两个字段,即为A医院对患者的住院号的字段设置一个键值,为B医院对患者的住院号的字段设置另一个键值。
步骤S204,确定一个或多个目标字段的键值与相应源字段之间的关联关系。
具体地,在源数据库(医院信息系统的数据库)中查找到与目标字段(待同步数据的一个或多个字段)对应的字段后,可以将目标字段的键值与查找到的字段关联,以便通过目标字段的键值,将查找到的字段的数据同步到目标数据库中。
步骤S205,基于关联关系,将源数据库中与一个或多个目标字段对应的源字段的数据同步到目标数据库中。
具体地,将目标字段的键值与查找到的源数据库中对应的字段关联后,可以基于该关联关系,将源数据库中与目标字段对应的源字段的数据同步到目标数据库中。容易注意的是,源数据库可以通过如下任意一种或多种方式向目标数据库提供与目标字段对应的源字段的数据:视图、Web服务、集成平台。
步骤S206,获取目标数据库中待显示的至少一个字段。
具体地,在将根据医院需求确定的目标字段对应的源数据库的数据同步到目标数据库后,医院可以确定每个字段是否显示。
步骤S207,输出目标数据库中待显示的至少一个字段的数据。
具体地,根据医院确定的需要显示的字段,显示目标数据库中对应字段的数据。例如,图1中,医疗设备主机102在将医院信息系统101的数据同步到本地数据库(即目标数据库)后,还可以进一步确定每个医疗设备分机104上显示的字段,隐藏掉一些只在医护设备主机102显示,而不想再医疗设备分机104上显示的数据。
通过本申请提供的数据同步的方法,较大提高实施速度和成功率,减少院方等待时间,较快应用产品。且配置表可重复利用,减少浪费。后期对院方维护也提供了较好的支持和拓展。该数据同步方法对实施人员无计算机水平硬性要求,会常规操作电脑和文档即可。在一定程度上也降低了实施人员的招聘难度。可以实现但不限于如下技术效果:(1)提高适配性,减少可重复工作量,提高工作效率;(2)实现多类型HIS数据互通,打通数据壁垒;(3)减少现场维护难度,降低维护人员门槛。从而解决了现有医院信息系统数据同步时每个应用场景单独实施,操作繁琐、易用性差,以及不方便扩展、配置脚本复杂,无法零基础配置的问题。
本申请还提出了一种数据同步的装置,该装置包括:查找单元、确定单元和同步单元。
其中,查找单元,用于查找源数据库中与一个或多个目标字段对应的源字段,其中,一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,目标数据库的数据字典中的每个字段对应唯一的键值;确定单元,用于确定一个或多个目标字段的键值与相应源字段之间的关联关系,源字段是查找到的目标字段对应的源字段;同步单元,用于基于关联关系,将源数据库中与一个或多个目标字段对应的源字段的数据同步到目标数据库中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (7)
1.一种数据同步的方法,其特征在于,所述方法包括如下步骤:
查找源数据库中与一个或多个目标字段对应的源字段,其中,所述一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,所述目标数据库的数据字典中的每个字段对应唯一的键值;
确定所述一个或多个目标字段的键值与相应源字段之间的关联关系,所述源字段是查找到的所述目标字段对应的源字段;
基于所述关联关系,将所述源数据库中与所述一个或多个目标字段对应的源字段的数据同步到所述目标数据库中;
在确定目标数据库中待同步数据对应的目标字段之前,所述方法还包括:
配置所述目标数据库的数据字典,所述目标数据库的数据字典中包含至少一个字段,每个字段具有不同的含义且使用唯一的键值进行唯一标识;
配置所述目标数据库的数据字典,包括:
获取源数据库的字段;
在所述目标数据库中未查找到与所述源数据库的字段对应的目标字段情况下,将所述源数据库的字段添加到所述目标数据库的数据字典中,并为所述源数据库的字段设置唯一的键值;
查找源数据库中与所述目标字段对应的源字段,包括:
获取目标字段的数据特征向量,以及所述源数据库中源字段的数据特征向量,所述目标字段的数据特征向量和所述源字段的数据特征向量均为多维向量;
计算所述目标字段的数据特征向量和所述源字段的数据特征向量的加权欧式距离;
将欧式距离最小的源字段确定为所述源数据库中与所述目标字段对应的源字段;
所述源数据库为医院内各种信息系统的数据库;
在同步数据时,将医院信息系统的数据读取到临时表中,并根据历史数据源说明文档将临时键值写入临时表中,比对临时表中的临时键值是否等于医疗设备主机的数据库对应的预先配置的数据字典中字段的唯一键值,只有完全相等的情况下,将该临时键值对应的字段的数据写入医疗设备主机的数据库中。
2.根据权利要求1所述的数据同步的方法,其特征在于,配置所述目标数据库的数据字典,包括:
配置所述目标数据库的数据字典中每个字段的如下至少一种属性:是否来自源数据库、源数据库的标识、是否显示字段、字段类型。
3.根据权利要求1所述的数据同步的方法,其特征在于,查找源数据库中与所述目标字段对应的源字段,包括:
获取目标字段的目标字段名,以及源字段的源字段名;
采用逆向最大匹配算法对所述目标字段名和所述源字段名分别进行分词处理,得到所述目标字段名和所述源字段名对应的多个特征词;其中,每个特征词对应一个文本特征项;
计算所述目标字段名与所述源字段名的相似度;
将相似度大于阈值的源字段名对应的源字段作为与所述目标字段对应的源字段;
将每个目标字段对应的源字段的源字段名添加到每个目标字段对应的字段名称库中,其中,每个目标字段对应的字段名称库中包含所述目标字段对应的多个字段名,所述多个字段名具有相同的键值,所述每个目标字段对应的字段名称库用于所述目标数据库同步其他的源数据库中的数据;
其中,计算所述目标字段名与所述源字段名的相似度的公式为:
其中,
Ftarget=(ftarget,1,ftarget,2,…,ftarget,k,…ftarget,N);
Foriginal=(foriginal,1,foriginal,2,…,foriginal,k,…foriginal,N);
其中,Sim(Ftarget,Foriginal)表示目标字段名与源字段名的相似度;Ftarget表示目标字段名对应的文本向量,ftarget,k表示目标字段名对应的第k个文本特征项,wtarget,k表示目标字段名对应的第k个文本特征项ftarget,k的权重;Foriginal表示源字段名对应的文本向量,foriginal,k表示源字段名对应的第k个文本特征项,woriginal,k表示源字段名对应的第k个文本特征项foriginal,k的权重;N表示从所述目标字段名或源字段名中提取的文本特征项的最大数量。
4.根据权利要求1所述的数据同步的方法,其特征在于,所述加权欧式距离的公式为:
其中,
Xtarget=(xtarget,1,xtarget,2,…,xtarget,k,…xtarget,M);
Xoriginal=(xoriginal,1,xoriginal,2,…,xoriginal,k,…xoriginal,N);
其中,Distance(dtarget,j,doriginal,j)表示目标字段的数据特征向量与源字段的数据特征向量之间的欧式距离;Xtarget表示目标字段的数据特征向量,dtarget,j表示目标字段的第j个数据特征;Xoriginal表示源字段的数据特征向量,doriginal,j表示源字段的第j个数据特征;Sj表示方差;M表示从所述目标字段名或源字段名中提取的数据特征的最大数量。
5.根据权利要求1所述的数据同步的方法,其特征在于,在基于所述关联关系,将所述源数据库中与所述目标字段对应的源字段的数据同步到所述目标数据库中之后,所述方法还包括:
获取所述目标数据库中待显示的至少一个字段;
输出所述目标数据库中待显示的至少一个字段的数据。
6.根据权利要求1所述的数据同步的方法,其特征在于,基于所述关联关系,将所述源数据库中与所述目标字段对应的源字段的数据同步到所述目标数据库中,包括:
所述源数据库通过如下任意一种或多种方式向所述目标数据库提供与所述目标字段对应的源字段的数据:视图、Web服务、集成平台。
7.一种数据同步的装置,其特征在于,所述装置包括:
查找单元,用于查找源数据库中与一个或多个目标字段对应的源字段,其中,所述一个或多个目标字段为目标数据库的数据字典中的一个或多个字段,所述目标数据库的数据字典中的每个字段对应唯一的键值;获取目标字段的数据特征向量,以及所述源数据库中源字段的数据特征向量,所述目标字段的数据特征向量和所述源字段的数据特征向量均为多维向量;计算所述目标字段的数据特征向量和所述源字段的数据特征向量的加权欧式距离;将欧式距离最小的源字段确定为所述源数据库中与所述目标字段对应的源字段;所述源数据库为医院内各种信息系统的数据库;配置所述目标数据库的数据字典,所述目标数据库的数据字典中包含至少一个字段,每个字段具有不同的含义且使用唯一的键值进行唯一标识;获取源数据库的字段;在所述目标数据库中未查找到与所述源数据库的字段对应的目标字段情况下,将所述源数据库的字段添加到所述目标数据库的数据字典中,并为所述源数据库的字段设置唯一的键值;
确定单元,用于确定所述一个或多个目标字段的键值与相应源字段之间的关联关系,所述源字段是查找到的所述目标字段对应的源字段;
同步单元,用于基于所述关联关系,将所述源数据库中与所述一个或多个目标字段对应的源字段的数据同步到所述目标数据库中;在同步数据时,将医院信息系统的数据读取到临时表中,并根据历史数据源说明文档将临时键值写入临时表中,比对临时表中的临时键值是否等于医疗设备主机的数据库对应的预先配置的数据字典中字段的唯一键值,只有完全相等的情况下,将该临时键值对应的字段的数据写入医疗设备主机的数据库中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811522527.5A CN109829012B (zh) | 2018-12-13 | 2018-12-13 | 数据同步的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811522527.5A CN109829012B (zh) | 2018-12-13 | 2018-12-13 | 数据同步的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109829012A CN109829012A (zh) | 2019-05-31 |
CN109829012B true CN109829012B (zh) | 2021-03-12 |
Family
ID=66858848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811522527.5A Active CN109829012B (zh) | 2018-12-13 | 2018-12-13 | 数据同步的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109829012B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110704462A (zh) * | 2019-09-06 | 2020-01-17 | 中国平安财产保险股份有限公司 | 数据变更通知方法、电子装置、计算机设备及存储介质 |
CN112650799A (zh) * | 2019-10-12 | 2021-04-13 | 中国石油化工股份有限公司 | 用于分析地震解释数据文本的方法和装置 |
CN110727710B (zh) * | 2019-10-12 | 2023-02-07 | 平安医疗健康管理股份有限公司 | 数据分析方法、装置、计算机设备和存储介质 |
CN112699178A (zh) * | 2019-10-23 | 2021-04-23 | 成都源本创新科技有限责任公司 | 一种数据协同方法和系统 |
CN111078774A (zh) * | 2019-12-05 | 2020-04-28 | 中国科学技术大学智慧城市研究院(芜湖) | 一种数据的自动整合方法 |
CN111104481B (zh) * | 2019-12-17 | 2023-10-10 | 东软集团股份有限公司 | 一种识别匹配字段的方法、装置及设备 |
CN111125254A (zh) * | 2019-12-23 | 2020-05-08 | 北京懿医云科技有限公司 | 数据库同步方法、装置、电子设备及计算机可读介质 |
CN116501375B (zh) * | 2023-06-21 | 2024-02-23 | 深圳复临科技有限公司 | 数据字典版本管理方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102043852A (zh) * | 2010-12-22 | 2011-05-04 | 东北大学 | 一种基于路径信息的可扩展标记语言祖先后代索引方法 |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
US8965923B1 (en) * | 2007-10-18 | 2015-02-24 | Asurion, Llc | Method and apparatus for identifying and resolving conflicting data records |
CN108573006A (zh) * | 2017-06-06 | 2018-09-25 | 北京金山云网络技术有限公司 | 跨机房数据同步系统、方法及装置、电子设备 |
-
2018
- 2018-12-13 CN CN201811522527.5A patent/CN109829012B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8965923B1 (en) * | 2007-10-18 | 2015-02-24 | Asurion, Llc | Method and apparatus for identifying and resolving conflicting data records |
CN102043852A (zh) * | 2010-12-22 | 2011-05-04 | 东北大学 | 一种基于路径信息的可扩展标记语言祖先后代索引方法 |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
CN108573006A (zh) * | 2017-06-06 | 2018-09-25 | 北京金山云网络技术有限公司 | 跨机房数据同步系统、方法及装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109829012A (zh) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109829012B (zh) | 数据同步的方法和装置 | |
CN110459320B (zh) | 一种基于知识图谱的辅助诊疗系统 | |
CN100570604C (zh) | 一种关系数据库应用自动升级的方法 | |
US7051020B2 (en) | Intelligent query re-execution | |
US7792822B2 (en) | Systems and methods for modeling partitioned tables as logical indexes | |
US20090287663A1 (en) | Disease name input support program, method and apparatus | |
CN101739390A (zh) | 基于技术设计文档的数据转换 | |
US20130097134A1 (en) | System and method for subject identification from free format data sources | |
JP2021500692A (ja) | 系図エンティティ解決システムおよび方法 | |
CN109522332A (zh) | 客户信息数据合并方法、装置、设备及可读存储介质 | |
US9461884B2 (en) | Information management device and computer-readable medium recorded therein information management program | |
US20080256480A1 (en) | Data gathering and processing system | |
US7739232B2 (en) | Programming system for occasionally-connected mobile business applications | |
US20190243840A1 (en) | Identification and compiling of information relating to an entity | |
CN111984745B (zh) | 数据库字段动态扩展方法、装置、设备及存储介质 | |
US20150186182A1 (en) | Progress status management system and progress status management method | |
CN113628707A (zh) | 一种患者病历数据的处理方法、装置、设备和存储介质 | |
JP6647668B1 (ja) | 機械学習用のデータ構造、学習方法及び情報提供システム | |
JP6579849B2 (ja) | 読影レポート作成支援システム、読影レポート作成支援方法、及び読影レポート作成支援プログラム | |
US12027269B2 (en) | Intelligent system and methods for automatically recommending patient-customized instructions | |
US20210357372A1 (en) | Data analysis assistance device, data analysis assistance method, and data analysis assistance program | |
US10585916B1 (en) | Systems and methods for improved efficiency | |
CN112286879B (zh) | 基于元数据的数据资产构建方法及装置 | |
EP2778957A1 (en) | Method and system for automatically displaying information based on task context | |
US20230197213A1 (en) | Medical information management system, clinical information acquisition server, medical information management method, and non-transitory recording medium storing a program |
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 |