田凯元
(天津市职业病防治院 信息科,天津300011)
浅析我院HIS系统升级的必要性及方案制定
田凯元
(天津市职业病防治院 信息科,天津300011)
本分主要描述了我院HIS系统的现状与存在的问题,针对性地制定了相应的解决方案,同时对在升级过程中可能会遇到的问题进行了阐述并制定对策。
HIS系统;Oracle;服务器;数据迁移;容灾
我院HIS系统于2007年正式上线,随着我院的快速发展,HIS系统不论是软件还是硬件都将面临更新、升级的问题,系统性能需求驱动,硬件设备的问题,数据的积累,磁盘I/O瓶颈以及对日常业务的开展效率产生的严重影响都促使着我院迫切的需要对HIS系统的软、硬件进行升级与改造。
医院现有HIS系统数据库服务器为两台2007年购置的IBM X3650服务器,磁盘阵列也为同年购置。服务器上所采用的操作系统平台为Windos Server 2003 32位,架设的数据库为Oracle 9i,版本号为9.2.0.8。Oracle数据库服务器采用的是Windows AD Server 自带的群集功能,用两台服务器做了一个群集,从而为数据库提供容错能力。客户端的终端软件有PowerBuilder开发,在客户端操作系统上需安装Oralce客户端,每个客户端需要有独立的账户和角色才能进行系统操作。
2.1 存在问题
HIS系统是我院日常运作的基础平台,各项业务数据都需要系统进行处理。由于业务量的增长、HIS服务器7×24h满负荷运转,运行压力非常大。首先表现为日常门诊挂号、收费的响应速度非常慢,一旦连接到HIS数据库的并发会话超过300个,系统便运行缓慢,门诊医生站需排队等候登录系统,甚至出现不能登录的情况,严重影响了日常诊疗业务的开展。高峰时期(10:00-11:00),服务器CPU占有率持续100%,严重时会出现服务器死机。目前运行的HIS系统没有完整的安全备份策略,只有部分数据的冷备份及数据导出,一旦发生服务器宕机或磁盘损坏,就会造成数据的丢失,因而数据安全性存在着较大的风险。
2.2 原因分析
(1)硬件平台因素:现用的HIS服务器与磁盘阵列购买时间较早,当时的硬件配置已不能满足当前系统的需求,比如服务器内存只有4G,CPU处理能力已达到峰值,各部件也已经到了老化的地步。以现在的系统读写需求,支撑上存在I/O读写瓶颈。由于客户端是直接连接数据库,并且为设置连接池机制,导致数据库文件在磁盘读写频繁,磁盘I/O次数和带宽长期承受较大压力,不能满足繁忙的业务系统,因此现有的磁盘阵列已呈瓶颈。
(2)数据库与操作系统因素:现用的Oracle版本为9i,当前服务器是32位的体系结构,服务器的内存只有4G,系统内存严重不足。这个数据库版本在此操作系统下只能使用1.7G的内存,Oracle在Windows平台下采用单进程技术,在Oracle的体系结构中的后台进程和为每个数据库用户服务的服务进程,都是采用线程来实现。因此无论服务器的实际物理内存有多少,Oracle所能使用的内存都不可能超过3G。这对我院数据分析处理与并发用户的连接是致命的限制。随着业务的发展,模块及用户的增多,会面临登录会话继续增长的压力,因此我们决定放弃现用的32位操作系统,选择64位系统。
3.1 升级硬件平台
根据建设思路,结合我院实际业务情况并考虑业务发展对服务器处理能力的要求,保证未来3~5年内业务发展需要,本着“经济、实用、可拓展”的原则,重新部署两台数据库服务器与一台存储。经过充分调研,决定购置两台IBM X3850 X5服务器(2*E7-480732GB内存2*300GB 硬盘DVD冗余电源双千兆以太网8GB HBA FC光纤卡),以目前HIS系统框架来说,该型号的服务器可以完全满足全部需求,且提供足够的冗余资源,并能够有效的支撑未来几年内后续应用与数据的增加所带来的压力。另外购置一台EMC存储(VNX5100 6*600GB 10K 3.5”磁盘),该存储能够满足当前HIS系统数据访问模式下对磁盘I/O的读写速度要求,与数据文件的安全。我们考虑系统必须要有大内存的支持,采用大内存出发点是为了解决磁盘I/O瓶颈。大内存的使用能够提供足够的数据库缓存保存用户最近使用的数据块,支持数据共享,减少I/O操作,并且可用于提高数据共享,减少I/O请求次数,因而可有效提升数据系统的整体效率。
3.2 升级系统运行平台
(1)操作系统:将当前操作系统升级到Windows Server 2008 64位,能够有效地解决32位操作系统对数据文件及内存、CPU的诸多限制问题。搭载着新的64位操作系统的服务器,相比32位系统,最大的性能提升是在于内存寻址空间的扩大。32位操作系统的4G内存限制经指数级扩张达到了目前硬件条件无法实现的大小。因此,在64位操作系统中,在硬件允许的条件下,存在多少物理内存,Oralce数据库就能使用多少内存空间,更好的去利用服务器的计算资源与存储性能,更好的提升系统性能。
(2)数据库系统:将现用的Oracle 9i升级至Oracle 11G,升级后可采用较先进的数据库技术,提供更高的访问速度,支持更大的访问需求,并在数据库容错和安全方面可设置更高的级别,升级至Oracle 11G R2 64位版本后,该数据库支持连接会话数基本只取决于操作系统及服务器性能的本身,不取决于数据库系统本身,这样一来就会更好的利用服务器资源,将其性能优势发挥到极致。
3.3 数据迁移
根据我院的数据库规模和具体业务特点,我们选择了最常用的数据库导出/导入来进行数据的迁移。EXP/IMP将采用表结构→数据行→索引的顺序进行。数据库的导出导入是一种最传统的常用的数据迁移及转化工具,因其导出文件具有平台无关性,所以在跨平台迁移中,最为常用。它可以通过数据库的升级,重新构造数据库的存储结构,如果数据不是非常大的情况下这种方法比较适合,因为这种办法所耗费的时间是与数据量的大小成正比的。根据我医院的实际数据大小,我们要求的升级方法停机时间短,对医院正常工作影响小并且保证数据的高度安全性,不造成数据丢失。经过测试,我院数据导出/导入的时间大约为4h,在可接受的范围内。由于HIS不能长时间停机,所以我们决定此次作业的时间为00:00至6:00,不能超过此时间,否则中止作业。
3.4 应急预案的制定
由于本次升级过程没有对原数据库做任何改动,数据的迁移过程只是在逻辑层面将数据进行导出并导入至新数据库中,除了IP地址有所变动,并不会对原环境产生任何改变。所以,如果万一升级失败或出现其他不可预见性的问题,直接启动原来数据库即可恢复正常业务,完成紧急情况下的回退。
3.5 容灾方案
通过对磁带库和Oracle自带的DataGuard及GoldenGate等技术的比较,结合已有数据库环境及数据量的大小,我们考虑利用DataGuard来进行容灾,并完全可以胜任,同时DataGuard技术也是Oracle高可用体系架构(MAA)中的数据同步技术。具体方法为:搭建一个DataGuard。它是在Primary数据库(住数据库)与Standby数据库(备库)间通过将Redo Entry或者归档日志同步传送到备库应用,来保证数据的同步。备库作为主数据库的备份,可以实现快速切换与灾难恢复,使得由于数据库故障而带来的损失降至最低。并且在oracle 11g当中,可使备库一边应用日志一边提供只读访问。
升级完成后,整个系统的性能都得到了极大的改善,业务繁忙时争抢资源的情况得到很好的解决,客户端程序响应速度明显加快,特别是对于之前问题较严重的门诊收费、挂号,和需要进行大量查询计算才能完成业务的部门效果尤为明显。总之,由于我们详尽的分析和充分的准备以及方案的正确可行,我们顺利的完成了我院第一次HIS系统升级工作,为以后的相关工作积累了宝贵的经验。
[1]支春明. 影响数据库性能的因素分析及改进策略[J]. 中国高新技术企业. 2008,23(1):151-152.
[2] 赖小惠,柯本学,许金惜. 我院HIS升级与改造的必要性及对策探讨[J]. 广州医药 2009,40(1):46-34.
[3] 吉亚力,胡呈炜,张辉. HIS服务器及数据库升级的实现[J]. 医疗卫生装备 2011,32(5): 12-1053/R.
[4] 徐金建 . HIS升级—32位操作系统SQL2000到64位SQL2005迁移[J]. 医疗卫生装备 2012,33(5): 12-1053/R.
[5] 刘晓辉 . HIS服务器及数据库升级前后性能的对比研究[J]. 医疗卫生装备 2008,29(12): 12-1053/R.
Talking about the development of our hospital HIS system upgrades and programs necessary by
TIAN Kai-yuan
(Tianjin Occupational Disease Prevention Hospital Information Section 30011)
This sub describes the current situation and problems in our hospital HIS system and from other aspects of software and hardware platforms and databases detailed analysis of the causes of the problem. For these reasons the development of appropriate solutions, while issues during the upgrade process might encounter elaborated and develop countermeasures. The purpose is to wait until after the upgrade system performance in a significant improvement, and create a stable, efficient, data security, easy to maintain HIS systems.
HIS system; Oracle; server; data migration; disaster
2014-05-06
R197.324
A
1002-2376(2014)09-0018-03