医院共享数据库建设
2015-03-13王春杰尚小平
王春杰 尚小平
(郑州大学第一附属医院病案管理科 郑州 450001)
医院共享数据库建设
王春杰 尚小平
(郑州大学第一附属医院病案管理科 郑州 450001)
在分析医院信息化建设存在问题的基础上,提出利用共享数据库来实现各个业务管理部门数据共享。重点介绍共享数据库及其功能模块、客户展示模块,引入共享数据库有利于实现全院数据的统一管理,为今后进行数据挖掘奠定基础。
共享数据库; 数据整合;数据订阅
1 引言
2009年中共中央、国务院《关于深化医药卫生体制改革的意见》中明确提出“建立健全覆盖城乡居民的基本医疗卫生制度,为群众提供安全、有效、方便、廉价的医疗卫生服务”,并且把信息化作为实现这一目标的重要手段[1]。 医院信息化是医院应用信息技术及其产品的过程,是信息技术由局部到全局、由战术层次到战略层次向医院的全面渗透。在近几年的医院信息化建设过程中,很多医院没有意识到整体规划的重要性和必要性,没有基于整个医院及医疗区域考虑统一的信息系统。各个业务部门根据自己的需要进行部门级的信息系统开发,各个部门信息化程度不同,所使用的数据库系统也不同,造成了资源的浪费和共享的困难。具体表现在:医院业务系统的平台不同,数据类型各异,导致大多数应该共享的数据重复录入,无法统一使用和共享[2];医院对信息的规范没有统一,缺少规划,导致信息标准混乱,信息不能交流和共享;各业务部门只注重其自身业务方面的信息,不能提供医务所涉及的全面信息的查询服务。由此,本文提出了一个新的医院信息化的设计模型——共享数据库,利用该模型将各个业务部门的基本数据进行集中整理,实现统一管理,保证数据的权威和准确,为各个业务应用系统、服务系统和电子院务系统提供数据支持。
2 共享数据库平台
2.1 共享数据库
2.2.1 整个共享数据库平台的核心 建立在医院业务系统或业务数据之上,向下从业务库集成数据并保持同步更新,成为各个业务系统之间的共享数据通道;向上作为统计分析服务的数据源,为其提供从各个业务系统集成过来的共享数据[3]。在整个医院中,共享数据库是唯一的,而业务数据库可以很多,共享数据库通过各个业务系统与各个业务库相联系。共享数据库集中存储了公共字典和共享数据,其中公共字典存储了参照标准(国家标准、原卫生部标准及其他标准)和院执行标准(医院实际执行的当前标准),为数据的标准化提供依据。
2.2.2 共享数据库与业务数据库之间的关系 见图1,共享数据库管理员利用数据建模工具对公共字典和共享数据结构进行定义,利用公共字典管理工具对公共字典进行管理或维护;共享数据库管理员向业务系统提出共享数据输出要求,业务系统管理员按照共享数据库要求组织数据,向共享数据库提出数据订阅申请,共享数据库管理员对订阅申请进行确认并提供订阅输出。
图1 共享数据库与业务数据库的关系
2.2 共享数据库功能模块
共享数据库功能模块是共享数据库与各业务数据库连接的桥梁,其主要功能就是对共享数据进行整合和订阅。
2.2.1 共享数据整合 共享数据库要获得业务数据库中的数据,就要使用数据整合工具,将业务数据库中可以提供的共享数据,按照共享数据库中的数据模式,抽取到共享数据库中,从而形成可供业务系统订阅的共享数据。使用Oracle公司提供的Oracle WareHouse Builder(OWB)能很容易地把各个业务数据库中的数据整合到共享数据库中。例如,在医院信息系统(Hospital Information System,HIS)数据库中病人信息表内容,见表1。病人信息表的内容要进入到共享数据库中,就必须被拆分、整理为两张表:病人基本信息表和病人详细信息表,见表2、表3。
表1 病人信息表T_BRXXB
表2 病人基本信息表T_BRJBXXB
表3 病人详细信息表T_BRXXXXB
这时就需对病人信息表中的部分字段进行SELECT操作,将结果生成病人基本信息表,代码如下所示:
SELECT ZYH,XM,XBDM,CSRQ,SFZH,MZDM,GBDM,CSD,HYDM INTO T_ BRJBXXB FROM T_ BRXXB;
同样,可以生成病人详细信息表,代码如下:
SELECT ZYH,XM,RYKBDM,RYRQ,CYKBDM,CYRQ INTO T_ BRXXXXB FROM T_ BRXXB;
在拆分的过程中,如遇到以下的情况时,就需要按照一定的方法处理。(1)出现空缺值。录入人员在进行数据录入时,可能认为某些属性不重要而将之忽略,但在数据提取和决策分析中可能要用到这些数据,因而需要设法为属性填上空缺的值。一般的做法是使用一个全局常量填写空缺值。(2)数据类型不一致。例如,病人信息表中“住院号”在有些数据库中用的是变长字符型,而在另外的数据库中用的是整型,在共享数据库中用的则是定长字符型。这时一般采用数据库本身提供的转换函数就能够解决,如DB2中的CHAR(INTERGER)函数可以将整型转换成字符串类型[4]。(3)属性值的表示方法不同。对于同一属性值在不同的数据库中有不同的表示方法。例如出院方式的表示,有些数据源采用的是男和女,而另外一些数据源则采用的是英文m和f,这时可以用标准SQL语句case…when实现转换:
select case when xb=′男′ then ′m′
when xb=′女′ then ′f′
end xb from T_BRXXB。
2.2.2 共享数据订阅 共享数据订阅是指业务系统通过数据订阅服务对共享数据库中的共享数据进行订阅,从而获得其可供共享的数据。共享数据库借用数据建模中权限设置的功能,按照权限组对共享数据进行访问。提供一套访问共享数据的访问接口,包括JAVA程序接口、XML数据包的接口,用户通过数据访问服务访问共享数据库[5]。各个业务系统通过数据订阅的方式,在自己的权限内来获得共享数据库中的数据。根据共享数据库与业务数据库之间的不同,数据订阅可分为同构方式和异构方式。同构方式就是共享数据库与业务数据库采用相同的数据库,异构方式就是系统数据库与业务数据库采用不同的数据库[6-7]。同构环境下数据的订阅线路,见图2。
图2 同构环境下数据订阅
例如,病案库(数据库采用oracle9i)要订阅共享数据库中的ICD字典,其具体步骤如下。(1)病案系统提出订阅要求并进行数据订阅,订阅共享数据库中的ICD字典信息。(2)共享数据库通过DBA对病案系统订阅的ICD字典信息进行审核。(3)共享数据库为教务系统提供表结构和访问帐号。在共享数据库中首先为病案系统建立一个访问用户,用户名:user_ba,密码:user_ba_pwd,为该用户授权。授权包括对象权限——ICD信息表T_ICD_10的读权限和系统权限——CREATE SESSION权限,其中前者确保业务系统可以从表中读出内容,后者确保业务系统可以该用户的身份创建dblink连接到共享数据库。具体操作运行如下DDL脚本:
CREATE USER user_ba PROFILE DEFAULT
IDENTIFIED BY user_ba_pwd DEFAULT TABLESPACE USERS ACCOUNT UNLOCK;
GRANT CREATE SESSION TO user_ba;
GRANT SELECT ON usr_ba.T_ICD_10 TO user_ba;
共享数据库管理员为病案系统建立好用户并授权以后,将用户名和密码、ICD信息表T_ICD_10的表结构提交给病案系统。(4)病案系统库通过访问帐号将信息订阅到本地。病案系统收到共享数据库管理员提供的信息后,开始实现对公共字典——ICD信息表的订阅。具体步骤如下。首先由病案系统管理员创建连接到共享数据库的dblink:
CREATE DATABASE LINK link_ba CONNECT TO
User_ba
IDENTIFIED BY user_ba_pwd
USING’172.18.10.238:1521: URPDB’
然后通过dblink取出源表中的信息创建实体化视图:
CREATE MATERIALIZED VIEW USR_SYS.T_ICD_10
PCTFREE 10 PCTUSED 40 MAXTRANS 255
STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1)
TABLESPACE USR_SYS BUILD IMMEDIATE USING INDEX
TABLESPACE USR_SYS PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 FREELISTS 1 FREELIST GROUPS 1 ) REFRESH COMPLETE
WITH ROWID
ON DEMAND
AS SELECT *
FROM user_ba.T_ICD_10@link_ba[8]
至此,业务库就拥有了从共享数据库中订阅来的ICD信息。其中创建实体化视图DDL中“USR_SYS.T_ICD_10”,是病案系统中所建实体化视图的方案(USR_SYS)和名称(T_ICD_10),可以替换成应用中所需要的方案和名称。
2.3 共享数据库客户展示模块
其主要功能是把数据库中的数据及其结构展现出来,进行数据分析,对数据和结构进行修改,主要内容是联机分析处理(On-Line Analytical Processing,OLAP)库,同时还提供了一些数据工具[9]。
2.3.1 OLAP库更新 在共享数据库中存储了大量的共享信息,在某些情况下一些数据有可能成为历史数据,如当病人出院或职工调出本单位时,这些不再需要的共享数据就要放入历史数据库。这个过程分为两步:将不再需要的数据放入历史数据库;删除共享数据库中的相应数据,对应的序列图,见图3、图4。
图3 添加历史数据到历史数据库
图4 删除共享数据库中的历史数据
2.3.2 历史数据库功能 历史数据库在整个共享数据中心有两个作用:一是对历史数据进行备份;二是作为共享数据库和OLAP库的中间数据集成地。OLAP库是共享数据库客户展示模块的基础,可对历史数据进行再次抽取提成,获得查询、统计、分析的基础数据,形成整个医院信息化的核心数据集成地。联机分析处理是针对特定的分析主题,设计多种可能的观察形式和相应的分析主题结构(即进行事实表和维护表的设计),使管理决策人员在多维数据模型的基础上进行快速、稳定和交互性的访问并进行各种复杂的分析、统计和预测工作[10-11]。
3 结语
本文阐述了共享数据库的概念及实现方法,为医院信息化建设中信息系统数据共享提供了解决方案。在医院中引入共享数据库后,通过各种标准,保证了数据的一致性。各业务系统可以从开发平台上获得所需要的共享数据,实现统一管理,极大地方便了数据的使用并带来诸多益处。
1 蹇奕苹,李朋,余中心,等.居民电子健康档案应用符合性测评及其问题分析[J].医学信息学杂志,2014,35(8):7-13.
2 黄孝伦,余中心,肖兵,等.以数据为主线探讨区域卫生信息平台建设[J].医学信息学杂志,2014,35(7):7-11.
3 郭永生,陈炜祺,徐立臻. 基于共享数据库的多数据源集成[J]. 微机发展,2004,14(2):49-51.
4 李兆廷.高校教育共享数据库的构建[J].技术与市场,2010,17(12):142-143.
5 许鑫,苏新宁,吴乃冈.高校共享数据中心平台的设计与实现[J].现代图书情报技术,2005,(6):48-53.
6 李鑫.基于共享数据库科研管理系统的设计与实现[D]. 石家庄:河北师范大学,2011.
7 赵静,史天运,李平. 铁路信息共享平台中共享数据库结构和关键技术研究[J]. 铁路计算机应用,2010,19(9):1-3.
8 飞思科技.oracle9i数据库高级管理[M].北京:电子工业出版社, 2011.
9 孔琳.基于HIS的数据仓库构建及多维分析[J]. 医学信息学杂志,2011,32(11) :6-9.
10 段占祺,应桂英,郑建智.我国医院决策支持系统建设现状与发展策略[J].医学信息学杂志,2014,35(3):17-20.
11 李明.医院决策支持系统设计与实施[J].医学信息学杂志,2014,35(2):22-27.
2015年《医学信息学杂志》征订启事
《医学信息学杂志》是国内医学信息领域创刊最早的医学信息学方面的国家级期刊。主管:国家卫生和计划生育委员会;主办:中国医学科学院;承办:中国医学科学院医学信息研究所。中国科技核心期刊(中国科技论文统计源期刊),RCCSE中国核心学术期刊(武汉大学中国科学评价研究中心,Research Center for Chinese Science Evaluation),美国《化学文摘》、《乌利希期刊指南》及WHO西太区医学索引(WPRIM)收录,并收录于国内3大数据库。主要栏目:专论,医学信息技术,医学信息研究,医学信息组织与利用,医学信息教育,动态等。读者对象:医学信息领域专家学者、管理者、实践者,高等院校相关专业的师生及广大医教研人员。
2015年《医学信息学杂志》国内外公开发行,每册定价:15元(月刊),全年180元。邮发代号:2-664,全国各地邮局均可订阅。也可到编辑部订购:北京市朝阳区雅宝路3号(100020)医科院信息所《医学信息学杂志》编辑部;电话:010-52328673,52328674,52328671。
《医学信息学杂志》编辑部
Construction of Hospital Shared-database
WANGChun-jie,SHANGXiao-ping,
MedicalRecordManagementDepartment,TheFirstAffiliatedHospitalofZhengzhouUnivsrsity,Zhengzhou450001,China
Based on analyzing the problems existed in hostital informatization, the paper proposes using shared-database to realize data sharing among various departments.It mainly introduces shared-database and its function module and customer display module. The introduction of shared-database is conducive to comprehensive management of hospital data, providing basis for future data mining.
Shared-database; Data integration; Data subscription
2014-12-25
王春杰,工程师,发表论文2篇。
R-058
A 〔DOI〕10.3969/j.issn.1673-6036.2015.07.010