数据归档方法和系统、前置机 【技术领域】
本发明涉及通信技术,特别涉及一种数据归档方法和系统、前置机。
背景技术
目前,电子文件归档中存在一些亟待解决的问题,比如,在医疗领域,医疗卫生领域的信息化建设正在快速发展,整合城乡卫生系统信息化平台,建立标准统一、信息互通、资源共享的区域卫生信息系统特别重要,这样才能够实现区域医疗共享,合理分配资源。但是,当前医疗机构的信息化建设中的医疗机构的电子医疗归档系统方面仍存在一些亟待研究和解决的问题,由于在医院信息化的初期我国并未出台相应的标准,各大医疗机构的内部信息系统呈现出多样化、信息化程度的差异化、以及其内部数据的机密化等异构特性。这给建立区域数据中心时的归档工作造成了很大的困难,往往导致技术人员不得不为不同的医院设计、开发不同的归档系统进而耗费大量的人力物力。除去医疗文件归档外,医疗信息系统的异构性对归档文件有效性的实现、对文件所载信息的整合、信息的共享都构成障碍。目前电子医疗领域尚无为针对异构系统设计的通用归档方案。异构系统的多样性、差异性和内部数据的机密性等特性将为归档工作以及后续的一系列工作都带来极大的不便。
因此,如何为异构系统比如不同的医疗机构设计出一个通用的数据归档方式是目前电子医疗领域亟待解决的难题。
【发明内容】
本发明提供一种数据归档方法和系统、前置机,解决了目前异构系统归档方案不能通用的问题,实现了异构系统间的通用归档方案,节省人力物力。
本发明提供了一种数据归档方法,包括:
步骤1、接收客户端上传的客户端数据,所述客户端数据存储在客户端数据表内;
步骤2、将所述客户端数据表转换为归档数据表,所述归档数据表内存储有统一格式数据;
步骤3、将所述归档数据表上传至数据中心,由所述数据中心将所述统一格式数据存入中心数据库。
本发明提供了一种前置机,包括:
接收模块,用于接收客户端上传的客户端数据,所述客户端数据存储在客户端数据表内;
处理模块,用于将所述接收模块接收到的所述客户端数据表转换为归档数据表,所述归档数据表内存储有统一格式数据;
发送模块,用于将所述处理模块转换成的所述归档数据表上传至数据中心,由所述数据中心将所述统一格式数据存入中心数据库。
本发明提供了一种数据归档系统,包括:
客户端,用于将客户端数据上传至所述前置机,所述客户端数据存储在客户端数据表内;
前置机,用于将从所述客户端接收到的所述客户端表转换为归档数据表,所述归档数据表中存储统一格式数据,并将所述归档数据表上传至数据中心;
数据中心,用于将从所述前置机接收到的所述归档数据表中的统一格式数据存入中心数据库。
本发明数据归档方法和系统、前置机,通过在前置机将客户端数据表转换为统一格式的归档数据表,使得该方法可以在异构系统间通用,实现了异构系统数据的统一归档。
【附图说明】
图1为本发明数据归档方法第一实施例的流程图;
图2为本发明数据归档方法第二实施例的信令流程图;
图3为本发明前置机实施例的结构示意图;
图4为本发明数据归档系统实施例的结构示意图。
【具体实施方式】
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
图1为本发明数据归档方法第一实施例的流程图,如图1所示,本实施例包括以下步骤:
步骤101、接收客户端上传的客户端数据,所述客户端数据存储在客户端数据表内。
本实施例以各医疗机构向数据中心上传数据进行归档为例,本步骤中的客户端为各医疗机构即医院端,每个医院端都有各自的信息系统,该信息系统采集各医院端自身的相关数据,比如患者信息、就诊记录等,形成各医院端各自的信息系统定义的数据表的形式,该客户端数据中还包括用以标识客户端的客户端编码,比如01代表A医院,02代表B医院,并将此数据表上传至数据中心前端的前置机。
步骤102、将所述客户端数据表转换为归档数据表,所述归档数据表内存储有统一格式数据。
前置机在部署时已经建立了数据库管理系统,并预先创建了统一格式的数据表即归档数据表,每张数据表涵盖一类内容并且格式统一,但是不同种类的数据表格式可能不尽相同。前置机在接收到客户端上传的客户端数据后,由前置机的数据交换平台对该客户端数据进行翻译和解析,将其转换为前置机定义的统一格式数据,将客户端数据表转换成存储有统一格式数据的归档数据表。
步骤103、将归档数据表上传至数据中心,由所述数据中心将所述统一格式数据存入中心数据库。
前置机将转换完成的归档数据表上传至数据中心,由所述数据中心将归档数据表中的统一格式数据存入中心数据库进行归档。
本实施例通过在前置机将客户端数据表转换为统一格式的归档数据表,使得该方法可以在异构系统间通用,实现了异构系统数据的统一归档。
图2为本发明数据归档方法第二实施例的信令流程图,如图2所示,本实施例包括以下步骤:
步骤201、客户端将客户端数据上传至归档服务器。
各医疗机构即医院端由其内部的信息系统采集各医院端各自的相关数据,比如患者信息、就诊记录等,形成各医院端信息系统定义的数据表的形式,并将该客户端数据表上传至归档服务器。
医院端信息系统应每天提交医疗信息数据比如门诊类型和住院类型的信息数据,以及字典表的全量数据:医护人员字典表。具体的提交时间可以根据各地以及各医疗机构的不同情况合理安排以达到缓解中心服务器压力、避免网络拥塞的目的。其中,医院内部的信息系统在编制向归档服务器提交采集数据的程序逻辑时,是将该步骤作为一个单独的处理程序逻辑定时单独运作,而不与医院内日常医疗业务流程关联,即不将该向归档服务器提交采集数据成功与否作为医院日常医疗业务流程是否可继续流转的必要条件。
步骤202、归档服务器将接收到的客户端数据表定时批量提交到前置机,该客户端数据表被发送到前置机的发送文件缓存区。
步骤203、前置机将客户端数据转换为统一格式数据,将客户端数据表转换成统一格式的归档数据表。
前置机预先创建了统一格式的数据表即归档数据表,每张数据表涵盖一类内容并且格式统一,但是不同种类的归档数据表格式可能不尽相同。各类数据表可以被不断完善升级以满足不同医疗机构的需求。以下表1为一个数据表格式的示例,该数据表用来描述医嘱方面的各项信息。
表1医嘱明细表
数据项 字段名 数据类型 字节 可否为空 说明
医嘱ID YZID 字符串 32 否 联合主键,见说明(1)
撤销标志 CXBZ 字符 1 否 联合主键,编码。1:正常; 2:撤销该医嘱
就诊流水号 JZLSH 字符串 32 否 见说明(2)
医嘱说明 YZSM 字符串 256 是 见说明(3)
卡号 KH 字符串 25 否 见说明(4)
医疗机构代码 YLJGDM 字符串 11 否
下达科室编码 XDKSBM 字符串 15 否 编码。见科室字典表
病区 BQ 字符串 32 是 病人所在的病区
执行科室编码 ZXKSBM 字符串 15 否 具体执行医嘱的科室。编 码。见科室字典表
医嘱下达 人工号 XDRGH 字符串 16 否 按医院内部相应医生的工 号填写。见医护人员字典 表
医嘱下达人姓名 XDRXM 字符串 32 否
医嘱执行 人工号 ZXRGH 字符串 16 是 按医院内部确认医嘱的护 士的工号填写。见医护人 员字典表
医嘱执行人姓名 ZXRXM 字符串 32 是
医嘱组号 YZZH 字符串 32 是
医嘱明细编码 YZMXBM 字符串 15 否 见说明(5)
医嘱明细名称 YZMXMC 字符串 256 否 见说明(5)
医嘱类别 YZLB 字符串 1 否 编码。1:长期;2:临时; 3:出院;9:其他
医嘱下达时间 YZXDSJ 时间 否
医嘱执行时间 YZZXSJ 时间 是
医嘱终止时间 YZZZSJ 时间 是
药品规格 YPGG 字符串
药品用法 YPYF 字符串
用药剂量 YYJL 字符串 32 是 见说明(6)
用药频度 YYPD 字符串 32 是 见说明(7)
发药剂量 FYJL 字符串 32 是 见说明(8)
检查部位 JCBW 字符串 32 是 见说明(9)
备注 BZ 字符串 1024 是 特殊的说明
密级 MJ 字符串 16 是 见说明(10)
关于上述表1的说明如下:
(1)医嘱ID是医院内部唯一标识一条医嘱的编号,必须保证在本医院内不重复。如医院内的序号是循环使用的,可以采用在前面加日期的方式避免重复(格式:YYYYMMDD)。所有被废止的医嘱不应填报。对已填报的医嘱不认为会有需要修正的可能,为此对填报的具有相同医嘱ID的明细,将作为重复填报而不予处理。对于具备完整医生工作站功能的医院,可以将零费用的医嘱也填报上传;对于暂时不具备完备功能的医院,可先仅仅填报上传非零费用的医嘱即可。
(2)就诊流水号是本表的外键,用于与就诊记录表相关联。
(3)医嘱说明是对该医嘱的文字性说明。
(4)“卡号”用以关联患者个人的索引。
(5)医嘱明细编码/名称:若该医嘱明细为收费项目,则上传明细项目字典表中的编码和名称;若该医嘱明细为非收费项目,则上传医院自己定义的编码和名称。
(6)用药剂量是指患者一次使用药物的量。如:“一次两片”。
(7)用药频度是指一个时间段内使用药物的次数。如:“一日三次”。
(8)发药剂量是指对应于一条医嘱指明发给患者的药量。如:“两盒”。发药剂量不必与用药剂量和频度形成数额计算的逻辑一致性关系。
(9)检查部位专门针对医学检查的医嘱,说明被检查的部位。
(10)密级的填报的规定如下:第一位填写对于特殊疾病的控制。其中0:普通疾病;1:恶性肿瘤;2:性病;3:其它不治之症;9:其它。其余各位预留备用,可均填0。
上述表1中所示例的医嘱明细表在绝大多数医院适用,并且除此医嘱数据表外,还可以定义患者信息表、就诊记录表、检验指标表、细菌结果表、药敏结果表、检验报告单表和出院小结等。
上述的各类数据表中的数据包括医院端的医疗信息数据,比如医嘱下达时间等,还包括字典数据,该字典数据为编码格式,比如医疗机构代码和医嘱下达科室编码等,这些编码数据都需要相关的字典表支持,即字典表用来解释各编码表示的含义,比如01代表A医院,02代表B医院。该字典表存储在数据中心,其定义由国家或地方的卫生部门完成。医院端可以通过WEB方式对该字典表中的部分内容进行维护和更新,医院端维护更新并得到相关部门的审批后该自电表即可生效。
前置机在接收到归档服务器上传的客户端数据后,由前置机的数据交换平台,对其进行翻译、解析等处理,将客户端数据表格式转换成前置机定义和创建的统一格式的归档数据表。
其中,前置机在接收到归档服务器上传的客户端数据后,必须得在接收到客户端上传的归档数据填报情况表后,其数据交换平台才开始对该客户端数据进行处理,以避免由于各种原因导致医院端的数据填报工作延迟而发生未填报完毕前置机的数据交换平台就开始处理的情况出现。该归档数据填报情况表是用于记录医院数据填报数据和数据交换平台处理数据的情况,医院端在数据上传完毕后,创建并填写该表,比如将该表中的处理标识字段修改为0,则标识医院端上传数据结束,然后医院端将该归档数据填报情况表上传至前置机的发送文件缓存区,发送文件缓存区根据该表判断医院端已经上传数据完毕,则才将存储的医院端上传的数据表传送给数据交换平台,数据交换平台开始对上传的客户端数据进行处理,并在处理完毕后,将归档数据填报情况表中的处理标识字段修改为1,标识数据交换平台处理完成。以下表2所示即为归档数据填报情况表的一个实施例结构。
表2归档数据填报情况表
![]()
步骤204、前置机将归档数据表上传至数据中心。
前置机在数据交换平台对客户端数据处理完成,将客户端数据表转换成统一格式的归档数据表后,将该归档数据表上传至数据中心。此外,前置机的发送文件缓存区内的存储空间,在前置机的数据交换平台完成数据上传之后,自动进行存储空间的释放工作。
步骤205、数据中心对所述归档数据表中的数据进行处理,并将其存入中心数据库。
数据中心在接收到前置机上传的归档数据表中的数据后,首先检验该上传数据的合法性,即判断该上传数据是否是符合数据中心数据库的约束条件。对于合乎条件的数据,将其插入到数据中心端相应的数据表中;对于不合乎条件的数据,数据中心端将给出错误数据的反馈给客户端。
数据中心检验上传数据合法性和作相关处理的具体步骤如下:数据中心会首先将上传的数据表中的字典数据即“编码”字段与存储在数据中心的字典表进行对照,检验该“编码”字段中的编码值是否在字典表中出现。若出现,则执行下一步处理;否则进行出错处理,即执行步骤206,将错误数据结果反馈给客户端。
在检验完字典数据后,数据中心端先处理患者信息表,检验医院端上传的患者信息表中的“卡号”字段是否出现在数据中心端的患者信息表中。若有,则合并患者信息,同时可以进行患者信息相似度的比较,标记高度相似的患者信息;若没有,则说明该患者信息是新增加的,则将其插入数据中心的患者信息表中,相当于对新增加的患者进行登记。
然后数据中心继续检验其他归档数据表的信息。数据中心先检验医院端上传的就诊记录表,检验就诊记录表中的标记患者信息的“卡号”是否出现在数据中心的患者信息表中,因为数据中心在前一步骤中已经处理完毕了患者信息表,所有患者的“卡号”都已经记录在了数据中心的患者信息表中,则如果医院端上传的就诊记录表中的卡号没有出现在数据中心的患者信息表中,则进行出错处理;如果数据中心的患者信息表中有医院端上传的就诊记录表中的卡号,则将该“卡号”对应的相关就诊记录插入数据中心的就诊记录表中。
接着,数据中心检验医院端上传的其他包含“就诊流水号”字段的各表中的“就诊流水号”是否出现在数据中心的就诊记录表中。若有,将各表的记录插入中心端对应的各表中;若没有,则进行出错处理。数据中心检验医院端上传的检验指标表、细菌结果表以及药敏结果表中的“医疗机构代码”、“检验报告单号”、“报告日期”三项是否出现在数据中心的检验报告单表中。若有,将各表的记录插入中心端对应的各表中,即如果医院端上传的检验指标表、细菌结果表以及药敏结果表中的“医疗机构代码”、“检验报告单号”、“报告日期”出现在数据中心的检验报告单表中,则将医院端上传的检验指标表中的内容插入数据中心的检验报告单表中,将医院端上传的细菌结果表中的内容插入数据中心的细菌结果表中,将医院端上传的药敏结果表中的内容插入数据中心的药敏结果表中;若没有,则进行出错处理。数据中心还检验医院端上传的检验报告单表、出院小结中“文件链接”字段中出现的文件名所对应的文件是否存在。若有,则将各文件存入中心端相应的存储该文件的目录中;若没有,则进行出错处理。
在插入新数据时,数据中心还需要根据各数据表的主标识和修改标志来判断新上传的数据的正确性。对不同类数据的操作过程可如下:正常数据:当数据中心系统检索后认定,新上传的数据项的主键没有与中心端已有的数据项中任何一条重复,且新数据的修改标志为“正常”,则将这条上传数据项视为正常数据,并将其插入数据表中。修正数据:当数据中心系统检索后认定,新上传的某条数据的主键与中心端已有的数据重复,且新数据的修改标志为“修正以往数据”,则将这条上传数据视为修正数据,中心将以新上传的数据的全部内容覆盖原有的主键相同的数据。撤销数据:当数据中心系统检索后认定,新上传的数据项的主键与中心端已有的数据重复,且新数据的修改标志为“撤销以往数据”,则将这条上传数据视为撤销数据,原有的主键相同的数据将做撤销处理。无效数据:当数据中心系统检索后认定,新上传的数据项的主键没有与中心端已有的数据项中的任何一条重复,但新数据的修改标志为“修正以往数据”或“撤销以往数据”,则将这条上传数据项视为无效数据,对其进行丢弃处理。若新上传的数据项的主键与中心端已有的数据重复,且新数据的修改标志为“正常”,说明医院将这一数据重复上传了两次(或以上),则将这条上传数据项视为重复数据,对其进行丢弃处理。其中,“住院诊断明细”、“出院诊断明细”和“手术明细”三类数据:考虑到医院内部信息系统在处理这三类业务数据时可能未记录操作日志,因此无法提交数据的修改和撤销请求。所以这三类数据的处理方法是,只要医院有这三类数据上传,则数据中心将相应“就诊流水号”的全部同类型数据做作废处理后,将新上传的数据作为正常数据。因此要求医院对于这三类数据在提交时一定要保证数据的完整性。
步骤206、数据中心将数据处理结果反馈给所述客户端。
数据中心系统将把采集数据的处理结果通过区域系统的内部网站向医院发布。医院可以到网站的相应的页面中对处理结果进行查询。发布的处理反馈结果包括日期、时间、处理的数据表、提交数据条数、提交处理成功数据条数、未成功处理数据条数。未成功处理数据的内容和未成功的原因。医院需要根据处理反馈结果查找原因,在解决了存在的故障之后,对未成功的数据再次进行提交操作。
本实施例通过在前置机将客户端数据表转换为统一格式的归档数据表,使得该方法可以在异构系统间通用,实现了异构系统间数据的统一归档。
图3为本发明前置机实施例的结构示意图,如图3所示,本实施例前置机包括接收模块301、处理模块302和发送模块303。其中,接收模块301用于接收客户端上传的客户端数据,所述客户端数据存储在客户端数据表内;处理模块302用于将所述客户端数据表转换为归档数据表,所述归档数据表内存储有统一格式数据;发送模块303用于将所述归档数据表上传至数据中心,由所述数据中心将所述统一格式数据存入中心数据库。进一步地,本实施例前置机的接收模块301可以包括第一接收单元3011和第二接收单元3012,其中,第一接收单元3011用于接收客户端上传的客户端格式数据;第二接收单元3012用于接收所述客户端上传的归档数据填报情况表,所述归档数据填报情况表包括标识所述客户端上传数据结束的处理标识。更进一步,处理模块302还可以包括第一处理单元3021和第二处理单元3022,其中,第一处理单元3021用于将所述客户端数据转换为统一格式数据,并将所述客户端数据表转换为归档数据表,所述统一格式数据存储在归档数据表内;第二处理单元3022用于在将所述客户端格式数据转换为统一格式数据结束后,将所述归档数据填报情况表中的处理标识修改为标识将所述客户端格式数据转换为统一格式数据结束的处理标识。
具体地,接收模块301可以为前置机中的发送文件缓存区,接收模块301中的第一接收单元3011接收到客户端即医院端上传的客户端数据,该客户端数据存储在各医院端信息系统定义的客户端数据表中;客户端上传该客户端数据结束后,会创建并填写归档数据填报情况表,将该表中的处理标识字段修改为标识客户端上传数据结束的标识,比如0代表数据上传完毕,填写完成后,客户端将此归档数据填报情况表可以通过WEB方式上传至前置机。前置机的第二接收单元3012接收到该标识客户端上传数据完毕的归档数据填报情况表后,通知处理模块302开始对该数据进行处理。处理模块302可以为前置机中的数据交换平台,处理模块302中的第一处理单元3021对客户端数据表中的客户端数据进行翻译、解析等处理,将客户端数据表转换为前置机定义和创建的统一格式数据表即归档数据表;数据处理完成后,第二处理单元3022将归档数据填报情况表中的处理标识修改为标识将客户端数据表转换为归档数据表结束的处理标识,比如1代表数据处理完成。发送模块303在数据处理完成后,将客户端数据表转换成统一格式的归档数据表上传至数据中心并存入中心数据库。
本实施例前置机通过将客户端数据表转换为统一格式的归档数据表,使得该方法可以在异构系统间通用,实现了异构系统间数据的统一归档。
图4为本发明数据归档系统实施例的结构示意图,如图4所示,本实施例数据归档系统包括客户端401、前置机402和数据中心403。其中,客户端401用于将客户端数据以客户端数据表的形式上传至所述前置机402;前置机402用于将从客户端401接收到的所述客户端表转换为归档数据表,所述归档数据表中存储统一格式数据,并将所述归档数据表上传至数据中心403,前置机402可以采用图3实施例所示的结构;数据中心403用于将所述归档数据表中的统一格式数据存入中心数据库。进一步地,该数据归档系统还包括归档服务器404,用于所述存储有所述客户端数据的客户端数据表上传至所述前置机402。数据中心403还可以包括第二处理模块4031、反馈模块4032、第二接收模块4033和更新模块4034,其中,第二处理模块4031用于对所述归档数据表中的统一格式数据进行是否符合数据中心403的中心数据库约束条件的正确性判断和处理;反馈模块4032用于向客户端401反馈归档数据处理结果;第二接收模块4033用于接收客户端401上传的字典表数据;更新模块4034用于根据所述客户端上传的字典表数据更新所述字典表。
具体地,客户端401将其内部信息系统采集的客户端数据以客户端数据表的形式上传至归档服务器404,由归档服务器404定时批量地将此客户端数据表上传至前置机402。前置机402将上传的客户端数据表转换为统一格式的归档数据表,并将其上传至数据中心403。数据中心403的第二处理模块4031对归档数据表中的统一格式数据进行是否符合数据中心403的中心数据库条件的合法性和正确性判断和处理后,将其存储入中心数据库。反馈模块4032在第二处理模块4031对归档数据表中的数据处理结束后,将数据处理结果反馈给客户端401。此外,数据中心403存储有用以支持归档数据表的字典表,该字典表可以对归档数据表中的字典编码数据进行解释和定义,而且该字典表可以进行实时的维护和更新,客户端401可以通过WEB方式对数据中心403的字典表进行维护,由数据中心403中的第二接收模块4033接收客户端401上传的字典表数据,再由更新模块4034根据该客户端401上传的字典表数据对字典表进行更新。
本实施例数据归档系统通过将客户端数据表转换为统一格式的归档数据表,使得该方法可以在异构系统间通用,实现了异构系统间数据的统一归档。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。