一种面向区域医疗的数据共享的方法及其系统的制作方法
【专利摘要】本发明提供一种面向区域医疗的数据共享的方法及其系统,其中,所述方法包括如下步骤:应用层的客户端发起查询或存储业务请求;服务层获得所述查询请求,并确定所述查询请求的数据所对应的数据服务系统和地址;或服务层获得所述存储请求,所述服务层分配数据库存储的地址于所述存储请求;根据所述地址,客户端从数据层中的关系型数据库或非关系型数据库中查询或存储业务请求的数据。所述系统包括包含有关系型数据库和非关系型数据库的数据层、包含有至少一个数据服务系统和数据服务中心节点的服务层以及与服务层连接的应用层。本技术方案不仅能支持所有医疗数据的存储和访问,还能提供跨语言、跨平台、跨终端、高稳定和高可靠的数据共享服务。
【专利说明】一种面向区域医疗的数据共享的方法及其系统
【技术领域】
[0001] 本发明涉及医疗区域信息化领域,尤其涉及一种面向区域医疗的数据共享的方法 及其系统。
【背景技术】
[0002] 随着医疗信息化建设的推进,医疗信息系统(Hospital information system, HIS)、放射信息系统(Radiology information system, RIS)以及影像归档和通信系统 (Picture archiving and communication system,PACS)在国内各大、中型医疗机构逐渐 得到普及。随着就诊细节、临床诊断和影像检查方法的不断改进,医疗信息系统中存储的数 据量高速增长。这些数据中除了电子病历等结构化数据,还有大量的非结构数据,如音频、 视频、图像以及各种结构的文档。如何安全地保存海量的结构化数据和非结构化数据,为拥 有不同使用权限的用户(如医生、病人、卫生监管机构等)提供快速查阅和调阅服务,实现 区域医疗信息共享,成为医疗行业面临的重大挑战之一。
[0003] 在我国医疗信息化的建设过程中,由于缺乏统筹规划,信息孤岛现象严重,资源利 用率低。各个医疗机构的信息系统采用的操作系统、数据库和存储结构各不相同。区域内的 医疗信息系统不仅软硬件完全异构,而且不具有互操作性。目前的医疗信息共享解决方案 难以满足跨语言、跨平台、跨终端的需求,仅能实现小范围内信息共享。而且,现有解决方案 没有足够的安全性考虑(包括数据的备份,存储冗余等),数据共享服务系统非常脆弱,一 个简单的故障就可能导致数据服务中断甚至崩溃,难以保证数据服务的稳定性和可靠性。
【发明内容】
[0004] 本发明解决的问题是提供一种面向区域医疗的数据共享的方法及其系统,不仅能 支持所有医疗数据的存储和访问,还能提供跨语言、跨平台、跨终端、高稳定和高可靠的数 据共享服务。
[0005] 为了解决上述问题,本发明提供了一种面向区域医疗的数据共享的方法,包括如 下步骤:应用层的客户端发起查询或存储业务请求;服务层获得所述查询请求,并确定所 述查询请求的数据所对应的数据服务系统和地址;或服务层获得所述存储请求,所述服务 层分配数据库存储的地址于所述存储请求;根据所述地址,所述客户端从数据层中的关系 型数据库或非关系型数据库中查询或存储所述业务请求的数据。
[0006] 上述所述一种面向区域医疗的数据共享的方法,其中,确定所述查询请求的数据 服务系统和地址的过程包括:将所述查询请求的数据和所述服务层中的数据服务系统中的 本地数据服务系统进行匹配,若匹配,则直接获取所述本地地址;若不匹配,则通过所述服 务层中的数据服务中心节点,根据所述查询请求的数据,在所述数据层中的缓存数据库中 匹配相对应的数据服务系统,并获取所述查询请求数据的地址。
[0007] 上述所述一种面向区域医疗的数据共享的方法,其中,所述客户端从数据库中存 储所述存储请求的数据的过程包括:所述客户端根据所述服务层返回的所述数据库地址存 储所述数据,且所述服务层将所述数据库存储的地址和所述查询请求数据的元数据存放于 所述数据层的缓存数据库中。
[0008] 为了解决上述问题,本发明还提供了一种面向区域医疗的数据共享系统,包括数 据层、服务层和应用层,其中,所述数据层包括关系型数据库和非数据型数据库,与所述数 据层连接的服务层包括至少一个数据服务系统,与所述服务层连接的应用层包括查询接口 和存储接口。
[0009] 上述所述一种面向区域医疗的数据共享系统,其中,所述数据层还包括与所述数 据库连接的缓存数据库,用于缓存所述数据库中的数据的元数据,以及与所述缓存数据库 连接的数据访问接口。
[0010] 上述所述一种面向区域医疗的数据共享系统,其中,所述服务层包括数据服务中 心节点,用于管理和调度所述数据服务系统。
[0011] 上述所述一种面向区域医疗的数据共享系统,其中,所述数据服务中心节点包括 心跳服务子模块、任务管理子模块和数据缓存子模块。
[0012] 上述所述一种面向区域医疗的数据共享系统,其中,所述数据服务系统包括业务 逻辑子模块和服务访问接口。
[0013] 与现有技术相比,本发明在数据层的数据库子模块中结合使用关系型数据库和非 关系型数据库,使得能够支持存储任意类型的医疗数据;
[0014] 进一步地,采用描述性语言脚本的机制,利用序列化机制传输数据,从而实现了跨 语言、跨平台、跨终端的医疗数据共享服务;
[0015] 进一步地,引入了医疗数据服务的主中心节点和从中心节点,以保证医疗数据共 享服务的稳定性可可靠性,实现了跨医疗机构的信息互换和业务协同。
【专利附图】
【附图说明】
[0016] 图1所示为本发明实施例一种面向区域医疗的数据共享系统的结构示意图;
[0017] 图2所示为本发明实施例面向区域医疗的数据查询的流程示意图;
[0018] 图3所示为本发明实施例面向区域医疗的数据存储的流程示意图。
【具体实施方式】
[0019] 在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以 很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况 下做类似推广,因此本发明不受下面公开的具体实施的限制。
[0020] 其次,本发明利用示意图进行详细描述,在详述本发明实施例时,为便于说明,所 述示意图只是实例,其在此不应限制本发明保护的范围。
[0021] 下面结合附图和实施例对本发明一种面向区域医疗的数据共享方法及其系统进 行详细描述。本发明实施例的面向区域医疗的数据共享系统如图1所示。所述面向区域医 疗的数据共享系统包括应用层、服务层和数据层。具体地,数据层包括数据库、缓存数据库 和数据访问接口,用于整合异构医疗信息系统,存储医疗信息系统中各种复杂结构的数据, 并为服务层提供数据访问接口。其中,数据库包括关系型数据库和非关系型数据库,关系型 数据库可支持结构化数据(如患者信息、医生信息和护士信息等)的存储,非关系型数据库 可支持非结构化数据(如图像、图形、视频、音频、文件和文档等)的存储,通过两者结合的 方式,完全覆盖医疗信息系统中各种复杂结构的数据存储。缓存数据库主要缓存的信息包 含元数据(业务ID和数据服务系统IP),用于将查询频繁的数据调用到内存中,然后从内存 中读取,从而大大提高读取速度。数据访问接口提供了数据层的访问接口,还提供了对表级 别单个数据的新增、查询、删除、更新操作、批量删除、批量更新和批量新增功能。其中,所述 访问接口被封装为面向对象的接口,方便服务层调用。
[0022] 此外,所述服务层包括至少一个数据服务系统,还包括数据服务中心节点,用于实 现医疗数据服务和提供数据服务访问接口。具体地,所述数据服务中心节点包括主节点和 从节点,主节点用于管理和调度医疗数据服务系统,从节点作为主节点的备用,可以在线动 态地添加和删除数据服务系统,且不影响其它医疗数据服务系统。其中,数据服务中心节点 包括心跳服务子模块、任务管理子模块和数据缓存子模块。数据服务系统包括业务逻辑子 模块和服务访问接口。所述应用层包括查询接口和存储接口,与服务层中的服务访问接口 连接,用于为用户提供查询接口和存储接口,用户通过调用查询接口和存储接口获取服务 层的医疗数据服务。
[0023] 具体地,在本实施例中,面向区域医疗的数据共享系统进行数据共享的方法如图2 和图3所示。对于数据的查询,如图2所示,首先,执行步骤S201,应用层的客户端通过查 询接口发起查询业务请求。接着,执行步骤S202,服务层获得所述查询请求,并确定所述查 询请求的数据所对应的数据服务系统和地址。具体地,通过服务访问接口,服务层获得查询 业务请求,并将所述查询请求的数据和所述服务层中的数据服务系统中的本地数据服务系 统(相对于客户端而言)进行匹配,若匹配,则直接获取所述本地地址;若不匹配,则将所 述查询业务请求发送给所述服务层中的数据服务中心节点,根据所述查询请求的数据,在 所述数据层中的缓存数据库中匹配相对应的数据服务系统,并获取所述查询请求数据的地 址。需要说明的是,数据服务中心节点在管理数据服务系统时,主节点和从节点通过心跳相 互检测,并共享一个虚拟IP地址,当从节点不能检测到主节点的心跳信息时,从节点根据 超时机制判定主节点失效或者当机后,接管主节点的工作。在查询过程中,数据服务中心节 点中的各个模块起到特定的作用,心跳信息的监控通过心跳服务子模块来管理,心跳服务 子模块负责管理所有接入数据服务系统和从节点的运行状态。通过任务管理子模块负责分 发任务给各个数据服务系统,数据服务系统定时发送任务报告给任务管理子模块,任务管 理子模块根据收到的包信息对分发的任务进行管理、监控和调度,并进行任务分发的负载 均衡。具体地,在查询过程中,数据服务中心节点根据客户端的查询业务请求数据在缓存数 据库中相对应的数据服务系统IP,则通过任务管理子模块将对该任务分配给相对应的数据 服务系统。而缓存数据子模块提供元数据的查询功能。需要说明的是,在存储过程中,缓存 数据子模块提供的是元数据的存储功能。
[0024] 此外,数据服务系统通过业务逻辑子模块与医疗机构各种信息系统的数据交互, 以及与数据服务中心节点的通讯交互(如心跳等)。业务逻辑子模块实现的各种数据服 务包括:存储服务,提供各种医疗数据的存储服务,根据医疗业务场景对业务进行编号,支 持各种医疗数据结构的存储,客户端可自定义数据结构和表关系;解析服务,对特定的医疗 数据进行标识,如图片或文件,抽取或解析成易识别的元数据,方便检索查找;查询服务,提 供各种医疗数据基本查询,也支持高级查询,包含了表级别的关联查询和跨业务数据的关 联查询,以及各种复杂查询的优化方法;检索服务,根据用户需求对其医疗数据进行检索, 并返回给用户,支持对各种大数据块或者文件进行索引,保存索引信息,方便客户端查询; 日志服务,汇总收集集群或者业务系统的日志信息,支持对日志文件进行管理和分析,提供 查询接口;数据管理,根据医疗行业的特性和数据库数据特征进行数据管理,包含了对脏 数据的清理,各种异构数据的集成,数据的备份容灾策略,以及数据迁移工具,为数据挖掘 提供支撑服务;心跳服务,数据服务系统上线后,会发送上线信息至数据服务中心节点进行 注册;注册成功后,数据服务系统会定时的发送心跳包至数据服务中心节点,当数据服务中 心节点在指定的心跳时间内没有收到数据服务系统发送的心跳包,则认定数据服务系统失 效,提供告警的方式,告诉相关人员处理;任务管理,接受数据服务中心节点发送来的任务, 根据任务级别对任务进行资源分配。利用消息包的形式,定期的发送任务运行状况给数据 中心节点,使得数据服务中心能够管理调度任务;文档管理,利用分布式文件系统提供的客 户端对文档进行增删查改。以及定期的备份维护,亦可以对文档进行解析,分类和检索;消 息读写,提供高效率的消息读写服务,使用半同步半异步和无锁技术的数据处理模型,支持 高并发大连接的数据读写能力;其他服务:可根据业务或者系统需求,进行扩展的服务。
[0025] 接着,执行步骤S203,根据所述地址,所述客户端从数据层中的关系型数据库和非 关系型数据库中查询所述业务请求的数据。具体地,若查询的数据为关系型数据,则根据得 到的查询数据的地址,客户端从关系型数据库中查询所要查询的数据。对于非关系型数据, 和关系型数据一样的过程,只是从非关系型数据库中获取数据。
[0026] 对于存储数据,如图3所示,首先,执行步骤S301,应用层的客户端通过存储接口 发起存储业务请求。接着,执行步骤S302,服务层通过服务访问接口获得所述存储请求,所 述服务层分配数据库存储的地址于所述存储请求。具体地,服务层中的数据服务中心节点 分配存储请求对应的存储地址。接着,执行步骤S303,根据所述地址,所述客户端访问所 属的地址的数据服务系统,数据服务系统会把所述业务请求的数据存储于数据层中数据库 中。具体地,所述客户端获得所述服务层返回的所述数据服务系统的地址,数据服务系统存 储所述数据于数据层中的关系型数据库或非关系型数据库中,且所述服务层通过数据服务 中心节点将所述数据服务系统地址和所述查询请求数据的元数据存放于所述数据层的缓 存数据库中。
[0027] 需要说明的是,上述所述的服务访问接口采用高效的远程过程调用协议(Remote Procedure Call Protocol, RPC)实现与应用层的通讯交互。服务访问接口根据不同的 运行环境(如 C++、java、C、php、python、0bject-C、C# 等),使用描述性语言(interface definition language, IDL)脚本对传输医疗数据的数据结构和业务逻辑快速地构建相应 的代码,并利用序列化机制传输医疗数据,实现了跨语言、跨平台、跨终端的医疗数据服务。
[0028] 本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域 技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发 明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明 的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案 的保护范围。
【权利要求】
1. 一种面向区域医疗的数据共享的方法,其特征在于,包括如下步骤: 应用层的客户端发起查询或存储业务请求;服务层获得所述查询请求,并确定所述查 询请求的数据所对应的数据服务系统和地址;或服务层获得所述存储请求,所述服务层分 配数据库存储的地址于所述存储请求;根据所述地址,所述客户端从数据层中的关系型数 据库或非关系型数据库中查询或存储所述业务请求的数据。
2. 如权利要求1所述的数据共享的方法,其特征在于,确定所述查询请求的数据服务 系统和地址的过程包括:将所述查询请求的数据和所述服务层中的数据服务系统中的本地 数据服务系统进行匹配,若匹配,则直接获取所述本地地址;若不匹配,则通过所述服务层 中的数据服务中心节点,根据所述查询请求的数据,在所述数据层中的缓存数据库中匹配 相对应的数据服务系统,并获取所述查询请求数据的地址。
3. 如权利要求1所述的数据共享的方法,其特征在于,所述客户端从数据库中存储所 述存储请求的数据的过程包括:所述客户端根据所述服务层返回的所述数据库地址存储所 述数据,且所述服务层将所述数据库存储的地址和所述查询请求数据的元数据存放于所述 数据层的缓存数据库中。
4. 如权利要求1所述的一种面向区域医疗的数据共享系统,包括数据层、服务层和应 用层,其特征在于,所述数据层包括关系型数据库和非关系型数据库,与所述数据层连接的 服务层包括至少一个数据服务系统,与所述服务层连接的应用层包括查询接口和存储接 □。
5. 如权利要求4所述的数据共享系统,其特征在于,所述数据层还包括与所述数据库 连接的缓存数据库,用于缓存所述数据库中的数据的元数据,以及与所述缓存数据库连接 的数据访问接口。
6. 如权利要求4所述的数据共享系统,其特征在于,所述服务层还包括数据服务中心 节点,用于管理和调度所述数据服务系统。
7. 如权利要求6所述的数据共享系统,其特征在于,所述数据服务中心节点包括心跳 服务子模块、任务管理子模块和数据缓存子模块。
8. 如权利要求4所述的数据共享系统,其特征在于,所述数据服务系统包括业务逻辑 子模块和服务访问接口。
【文档编号】G06F17/30GK104142957SQ201310170811
【公开日】2014年11月12日 申请日期:2013年5月10日 优先权日:2013年5月10日
【发明者】陈国富, 陈文娟, 狄园园 申请人:上海联影医疗科技有限公司