“后关系型”数据库Caché在HIS中的应用研究
2014-08-07康世英
康世英
(咸阳师范学院信息工程学院,咸阳712000)
“后关系型”数据库Caché在HIS中的应用研究
康世英
(咸阳师范学院信息工程学院,咸阳712000)
通过分析国内外HIS(Hospital Information System)系统的现状,指出我国现有HIS系统的主要问题,并以这些问题为前提对HIS系统作了深入研究。分析了后关系型数据库Caché在HIS中的应用优势,并给出了基于后关系型数据库Caché的HIS架构,最后,以科室管理为例给出了详细的设计过程。
后关系型;Caché数据库;医院信息系统;Web服务
1 引 言
医院信息系统(HIS)在国际学术界被公认为新兴的医学信息学(Medical Informatics)的重要分支。HIS就是应用计算机和网络通信等高科技手段对医院内大量信息进行数字化管理的现代信息系统,它能提供全院的经济运行状态、医疗质量状态、工作质量状态等,以及获取各部门的信息反馈,从而使各部门的管理者进行计划决策、组织实施、协调控制。
2 目前我国HIS发展现状
根据卫生部统计,国内有17000多家县以上的医疗机构,有5000多家医院建设了HIS。但是多数HIS还是以单纯的经济核算为核心的收费及经济管理初级阶段的信息系统,实际上达不到真正意义上的HIS。而较为完整的HIS应是以管理为核心的信息系统,包括医院内部所有信息,如收费、病案、药品管理、财务、经管、职能科室、总务后勤、医技等等,其范围大,信息量多。完整的HIS系统既要为医院管理服务,又要为临床科研及教学服务,既包括基层窗口实时业务处理,又包括中高层信息综合与分析,应当是通过全面联网,实现基于成本核算的现代经营管理和基于提高医疗质量的现代医院主题管理的系统。
3 我国HIS中存在的问题及原因
HIS系统大多存在如下一些共同问题:只能做些初级的事务处理,模仿原有的手工工作流程,而缺乏对所采集数据的整理分析;基本上都是使用一个主服务器的规模,若同时在线的用户数量太多,服务器就有些不能满足了;主要功能还只是着眼于完成医院收费和财务管理方面的工作,还不能完整的覆盖患者就医和医院管理的每个环节,造成数据采集不完整,进而影响HIS系统的功能和运行效率;数据库里的数据量增长过快,几个月就要做一次数据清除,这样已经积累的信息也就随着垃圾数据一起被“请”出去,清除数据后还要因此停机重新做索引,这也会影响系统的正常运行[1]。
而产生这些问题的很重要原因是数据库选用。目前大多数HIS系统所采用的是Oracle,SQL Server等关系型数据库[2,5]。关系数据库对于有些行业中的应用来说是个很好的数据库,但是对于数据复杂的医疗行业就不是最佳选择了。因为关系数据库主要适合于数据关系比较简单的场合,所有数据要存进关系数据库中,都要拆分成二维的关系表格,否则就不能存储。但现实世界的数据很难分解为这种简单的行列结构,结果就产生了大量的表,表和表之间的关系就变得很难记忆和表达。行列结构是简单,但是留给程序完成的外连接、存储过程、触发器就不是这么简单了。另外,关系数据库里的关系表格的结构事先需要定义,结果不仅在表格结构扩展变动时会有麻烦,而且特别是实际上并没有数据存储的空表也会白白占用一部分数据存储空间,这种浪费和占用数据空间的直接影响是造成医院信息系统在使用中数据会动态增长过快的重要原因。
4 “后关系型”数据库Caché应用于HIS中的优势
4.1 多维数据模型
通过使用高效多维数据模型存储技术来替代传统的二维表,只要少量的磁盘读写就能完成数据访问和更新。降低I/O意味着应用程序运行得更快。
Caché数据库的核心是高效的多维数据引擎。通过内置的CachéObjectScript脚本语言,可以直接访问多维数据结构,这样可以获得最高的性能和最好的存储利用率[3]。
由图1可以看到,用户可以通过多种方式(对象,XML,关系(SQL),Global,可以根据用户习惯或者历史原因进行灵活选择)创建数据定义和输入、修改数据;相反地,也可以用这些方式提取和分析数据。可以看出,无论是表还是持久化对象,都是以同一种方式(Global)保存于数据库中,只是在访问时通过不同的机制将它们投影(Project)成为对象或是关系的形式[4]。
4.2 Caché的事务处理
快速查询中,通过使用事务型位图索引技术,使用者能够快速搜索大型数据库——通常查询成百万记录只需要不到一秒时间,这种数据库上运行的主要是用于处理事务的系统。Caché的事务型位图处理允许在实时更新的数据上进行实时数据分析。
图1 Caché存储体系
4.3 Caché的分布式应用
当使用不断增加时,Caché里的企业缓存协议(ECP)允许任意增加应用服务器。每个增加的应用服务器都好像在使用本地数据库一样。因此如果磁盘吞吐量成为瓶颈,可以采取增加数据服务器的措施,并且数据库可在逻辑上分区。如果一个数据服务器死机并重启,或者出现暂时的网络断连情况,应用服务器仍可以继续进行处理,而用户除了能感受到一点延迟之外没有什么影响。
5 Caché在HIS中的应用
系统采用B/S和C/S相结合的三层架构,即从下到上为数据层、业务逻辑层和表示层(如图2所示)。这种面向服务的层次架构可以实现所有数据信息的集中存放和统一管理,安全可靠,而且还能有效提高系统的可扩展性和可靠性。系统开发时,将所有模块都集中在一个命名空间HIS下。建立命名空间的主要工作就是建立与数据库的映射,这样做可以将程序逻辑与物理存在的数据独立开来,便于开发人员专注于系统功能的设计,不需要为未来实施时不同的系统架构而作出额外工作,系统架构也因为这样变得更灵活。
数据层:负责存储数据信息和数据逻辑,同时也为业务逻辑和底层数据信息提供了一个数据交换平台,使得数据信息保持了良好的安全性和一致性;用以大写字母C开头的类,表示存储类,存储类定义了所存储数据的类型结构,如病区信息类CWard;
业务逻辑层:负责接受客户的服务请求,进行数据处理,使数据信息有良好的封装性和保密性,同时提供标准的服务接口,为进一步调用和返回数据结果提供服务;
表示层:用ZEN开发用户界面,业务单纯,它主要实现与用户交互,处理收集数据,向业务逻辑层的业务逻辑请求调用,并显示处理结果。
由于篇幅所限,以科室管理为例来说明系统开发过程。
图2 系统的层次架构
5.1 数据层
科室管理系统是HIS涉及科室的分系统使用的基础数据。凡使用到科室信息的分系统都与其有关。所以科室系统设计得合理与否,对于整个HIS系统都有很大的影响。
针对科室管理系统所完成的功能将模块划分为三个类:科室临床属性类(CDeptClinicAttrDict)、病区信息类(CWard)和科室类(CDept),如图3所示。
图3 科室管理类
其中,CDeptClinicAttrDict是CDept的一个引用类,病区类CWard和科室类CDept之间是一对多的关系,即一个病区可以包含多个科室对应的患者,病区不能为空,所以有关系1..n,FaOrgnization(父组织机构)和FaReckDept(父核算级科室)是调用自身类,其中父组织机构用于解释该科室的组织层次关系,方便管理;父核算级科室用于解释该科室所属的核算机构,方便财务结算。因为有的时候,组织机构和核算机构并不是一致的。
5.2 业务逻辑层
系统中所有的显示逻辑、应用逻辑、控制逻辑都在业务逻辑层。该层的作用是作为纽带将表示层和数据库紧密联系在一起,它不但支持客户端读取、存储数据,而且在业务方面也起到对表示层的支撑作用。业务逻辑层主要是基于XML的Web Services服务接口。
例如在AddDept(添加科室)页面,如图4所示,当填写好必需的科室名称和科室代码之后点击“添加新的科室”按钮,页面就会向服务器发送“添加新科室”的请求,这个请求就通过业务逻辑层的接口来实现。它通过调用接口函数DeptExists判断该科室名称和科室代码是否已经存在,由于科室名称和科室代码被设置成唯一索引,而Caché数据库对于已建立唯一索引的属性进行Open,Delete和Exists操作时,可以不用实例化而直接操作,所以,通过接口建立了与数据库的连接。
图4 添加科室界面
部分接口代码如下:
接口类还有:取得所有科室SelectAllDept(),添加病区与科室的对照AddRelationShipOfDeptAnd Ward(),更新病区信息UpdateWard(),取得科室细节GetDeptDetail()等。
5.3 表示层
表示层负责处理用户输入和向用户输出,但并不负责解释其含义。科室管理系统的表示层界面主要是针对病区和科室属性的设置,以及病区和科室间一对多关系的设置。
6 结束语
HIS临床积累的信息很多,数据类型及相互关系错综复杂,并且多分散在各科室、各专业和各层次的人手中。采用后关系型数据库对各种信息进行加工、处理、交换和保存,能提供全院的经济运行状态、医疗质量状态、工作质量状态等等,以及获取各部门的信息反馈,从而提高医院的工作效率和质量,具有很强的现实意义和应用前景。
[1]周吉文.医院HIS系统数据库优化技术浅析[J].科技资讯,2008(23):29.
[2]姚琦.基于多维数据库的财务数据管理[J].长春师范学院学报,2011(6):23-25.
[3]InterSystems Corporation.CachéTechnology Guide[EB/OL].http://www.intersystems.cn/cache/technology/techguide,2010-01-11.
[4]InterSystems Corporation.Caché技术手册[EB/OL].http://www.intersystems.cn/cache/technology/techguide/index.html,2010-01-11.
[5]陈跃文,李永红.基于多层结构医院管理信息系统的开发与研究[D].山东:山东科技大学,2005.
Research on Application of Post-relational Database Caché in Hospital Information System
KANG Shi-ying
(School of Information Engineering,Xianyang Normal University,XianYang 712000,China)
After analyzing the domestic and international actualities,according to themain problem of the current HIS(Hospital Information System)in China,the system is researched deeply in this paper.It proposes the architecture of HIS based on the advantages of post-relational database cache.Then,the detailed design procedure is provided as the system is applied to the departmentmanagement.
Post-relational;CachéDatabase;HIS;Web Services
10.3969/j.issn.1002-2279.2014.05.013
TP311
:B
:1002-2279(2014)05-0043-04
康世英(1980-),女,山西大同人,硕士研究生,讲师,研究方向:计算机网络应用。
2014-12-23