田凱元
(天津市職業(yè)病防治院 信息科,天津300011)
淺析我院HIS系統(tǒng)升級的必要性及方案制定
田凱元
(天津市職業(yè)病防治院 信息科,天津300011)
本分主要描述了我院HIS系統(tǒng)的現(xiàn)狀與存在的問題,針對性地制定了相應(yīng)的解決方案,同時對在升級過程中可能會遇到的問題進(jìn)行了闡述并制定對策。
HIS系統(tǒng);Oracle;服務(wù)器;數(shù)據(jù)遷移;容災(zāi)
我院HIS系統(tǒng)于2007年正式上線,隨著我院的快速發(fā)展,HIS系統(tǒng)不論是軟件還是硬件都將面臨更新、升級的問題,系統(tǒng)性能需求驅(qū)動,硬件設(shè)備的問題,數(shù)據(jù)的積累,磁盤I/O瓶頸以及對日常業(yè)務(wù)的開展效率產(chǎn)生的嚴(yán)重影響都促使著我院迫切的需要對HIS系統(tǒng)的軟、硬件進(jìn)行升級與改造。
醫(yī)院現(xiàn)有HIS系統(tǒng)數(shù)據(jù)庫服務(wù)器為兩臺2007年購置的IBM X3650服務(wù)器,磁盤陣列也為同年購置。服務(wù)器上所采用的操作系統(tǒng)平臺為Windos Server 2003 32位,架設(shè)的數(shù)據(jù)庫為Oracle 9i,版本號為9.2.0.8。Oracle數(shù)據(jù)庫服務(wù)器采用的是Windows AD Server 自帶的群集功能,用兩臺服務(wù)器做了一個群集,從而為數(shù)據(jù)庫提供容錯能力??蛻舳说慕K端軟件有PowerBuilder開發(fā),在客戶端操作系統(tǒng)上需安裝Oralce客戶端,每個客戶端需要有獨(dú)立的賬戶和角色才能進(jìn)行系統(tǒng)操作。
2.1 存在問題
HIS系統(tǒng)是我院日常運(yùn)作的基礎(chǔ)平臺,各項(xiàng)業(yè)務(wù)數(shù)據(jù)都需要系統(tǒng)進(jìn)行處理。由于業(yè)務(wù)量的增長、HIS服務(wù)器7×24h滿負(fù)荷運(yùn)轉(zhuǎn),運(yùn)行壓力非常大。首先表現(xiàn)為日常門診掛號、收費(fèi)的響應(yīng)速度非常慢,一旦連接到HIS數(shù)據(jù)庫的并發(fā)會話超過300個,系統(tǒng)便運(yùn)行緩慢,門診醫(yī)生站需排隊(duì)等候登錄系統(tǒng),甚至出現(xiàn)不能登錄的情況,嚴(yán)重影響了日常診療業(yè)務(wù)的開展。高峰時期(10:00-11:00),服務(wù)器CPU占有率持續(xù)100%,嚴(yán)重時會出現(xiàn)服務(wù)器死機(jī)。目前運(yùn)行的HIS系統(tǒng)沒有完整的安全備份策略,只有部分?jǐn)?shù)據(jù)的冷備份及數(shù)據(jù)導(dǎo)出,一旦發(fā)生服務(wù)器宕機(jī)或磁盤損壞,就會造成數(shù)據(jù)的丟失,因而數(shù)據(jù)安全性存在著較大的風(fēng)險。
2.2 原因分析
(1)硬件平臺因素:現(xiàn)用的HIS服務(wù)器與磁盤陣列購買時間較早,當(dāng)時的硬件配置已不能滿足當(dāng)前系統(tǒng)的需求,比如服務(wù)器內(nèi)存只有4G,CPU處理能力已達(dá)到峰值,各部件也已經(jīng)到了老化的地步。以現(xiàn)在的系統(tǒng)讀寫需求,支撐上存在I/O讀寫瓶頸。由于客戶端是直接連接數(shù)據(jù)庫,并且為設(shè)置連接池機(jī)制,導(dǎo)致數(shù)據(jù)庫文件在磁盤讀寫頻繁,磁盤I/O次數(shù)和帶寬長期承受較大壓力,不能滿足繁忙的業(yè)務(wù)系統(tǒng),因此現(xiàn)有的磁盤陣列已呈瓶頸。
(2)數(shù)據(jù)庫與操作系統(tǒng)因素:現(xiàn)用的Oracle版本為9i,當(dāng)前服務(wù)器是32位的體系結(jié)構(gòu),服務(wù)器的內(nèi)存只有4G,系統(tǒng)內(nèi)存嚴(yán)重不足。這個數(shù)據(jù)庫版本在此操作系統(tǒng)下只能使用1.7G的內(nèi)存,Oracle在Windows平臺下采用單進(jìn)程技術(shù),在Oracle的體系結(jié)構(gòu)中的后臺進(jìn)程和為每個數(shù)據(jù)庫用戶服務(wù)的服務(wù)進(jìn)程,都是采用線程來實(shí)現(xiàn)。因此無論服務(wù)器的實(shí)際物理內(nèi)存有多少,Oracle所能使用的內(nèi)存都不可能超過3G。這對我院數(shù)據(jù)分析處理與并發(fā)用戶的連接是致命的限制。隨著業(yè)務(wù)的發(fā)展,模塊及用戶的增多,會面臨登錄會話繼續(xù)增長的壓力,因此我們決定放棄現(xiàn)用的32位操作系統(tǒng),選擇64位系統(tǒng)。
3.1 升級硬件平臺
根據(jù)建設(shè)思路,結(jié)合我院實(shí)際業(yè)務(wù)情況并考慮業(yè)務(wù)發(fā)展對服務(wù)器處理能力的要求,保證未來3~5年內(nèi)業(yè)務(wù)發(fā)展需要,本著“經(jīng)濟(jì)、實(shí)用、可拓展”的原則,重新部署兩臺數(shù)據(jù)庫服務(wù)器與一臺存儲。經(jīng)過充分調(diào)研,決定購置兩臺IBM X3850 X5服務(wù)器(2*E7-480732GB內(nèi)存2*300GB 硬盤DVD冗余電源雙千兆以太網(wǎng)8GB HBA FC光纖卡),以目前HIS系統(tǒng)框架來說,該型號的服務(wù)器可以完全滿足全部需求,且提供足夠的冗余資源,并能夠有效的支撐未來幾年內(nèi)后續(xù)應(yīng)用與數(shù)據(jù)的增加所帶來的壓力。另外購置一臺EMC存儲(VNX5100 6*600GB 10K 3.5”磁盤),該存儲能夠滿足當(dāng)前HIS系統(tǒng)數(shù)據(jù)訪問模式下對磁盤I/O的讀寫速度要求,與數(shù)據(jù)文件的安全。我們考慮系統(tǒng)必須要有大內(nèi)存的支持,采用大內(nèi)存出發(fā)點(diǎn)是為了解決磁盤I/O瓶頸。大內(nèi)存的使用能夠提供足夠的數(shù)據(jù)庫緩存保存用戶最近使用的數(shù)據(jù)塊,支持?jǐn)?shù)據(jù)共享,減少I/O操作,并且可用于提高數(shù)據(jù)共享,減少I/O請求次數(shù),因而可有效提升數(shù)據(jù)系統(tǒng)的整體效率。
3.2 升級系統(tǒng)運(yùn)行平臺
(1)操作系統(tǒng):將當(dāng)前操作系統(tǒng)升級到Windows Server 2008 64位,能夠有效地解決32位操作系統(tǒng)對數(shù)據(jù)文件及內(nèi)存、CPU的諸多限制問題。搭載著新的64位操作系統(tǒng)的服務(wù)器,相比32位系統(tǒng),最大的性能提升是在于內(nèi)存尋址空間的擴(kuò)大。32位操作系統(tǒng)的4G內(nèi)存限制經(jīng)指數(shù)級擴(kuò)張達(dá)到了目前硬件條件無法實(shí)現(xiàn)的大小。因此,在64位操作系統(tǒng)中,在硬件允許的條件下,存在多少物理內(nèi)存,Oralce數(shù)據(jù)庫就能使用多少內(nèi)存空間,更好的去利用服務(wù)器的計算資源與存儲性能,更好的提升系統(tǒng)性能。
(2)數(shù)據(jù)庫系統(tǒng):將現(xiàn)用的Oracle 9i升級至Oracle 11G,升級后可采用較先進(jìn)的數(shù)據(jù)庫技術(shù),提供更高的訪問速度,支持更大的訪問需求,并在數(shù)據(jù)庫容錯和安全方面可設(shè)置更高的級別,升級至Oracle 11G R2 64位版本后,該數(shù)據(jù)庫支持連接會話數(shù)基本只取決于操作系統(tǒng)及服務(wù)器性能的本身,不取決于數(shù)據(jù)庫系統(tǒng)本身,這樣一來就會更好的利用服務(wù)器資源,將其性能優(yōu)勢發(fā)揮到極致。
3.3 數(shù)據(jù)遷移
根據(jù)我院的數(shù)據(jù)庫規(guī)模和具體業(yè)務(wù)特點(diǎn),我們選擇了最常用的數(shù)據(jù)庫導(dǎo)出/導(dǎo)入來進(jìn)行數(shù)據(jù)的遷移。EXP/IMP將采用表結(jié)構(gòu)→數(shù)據(jù)行→索引的順序進(jìn)行。數(shù)據(jù)庫的導(dǎo)出導(dǎo)入是一種最傳統(tǒng)的常用的數(shù)據(jù)遷移及轉(zhuǎn)化工具,因其導(dǎo)出文件具有平臺無關(guān)性,所以在跨平臺遷移中,最為常用。它可以通過數(shù)據(jù)庫的升級,重新構(gòu)造數(shù)據(jù)庫的存儲結(jié)構(gòu),如果數(shù)據(jù)不是非常大的情況下這種方法比較適合,因?yàn)檫@種辦法所耗費(fèi)的時間是與數(shù)據(jù)量的大小成正比的。根據(jù)我醫(yī)院的實(shí)際數(shù)據(jù)大小,我們要求的升級方法停機(jī)時間短,對醫(yī)院正常工作影響小并且保證數(shù)據(jù)的高度安全性,不造成數(shù)據(jù)丟失。經(jīng)過測試,我院數(shù)據(jù)導(dǎo)出/導(dǎo)入的時間大約為4h,在可接受的范圍內(nèi)。由于HIS不能長時間停機(jī),所以我們決定此次作業(yè)的時間為00:00至6:00,不能超過此時間,否則中止作業(yè)。
3.4 應(yīng)急預(yù)案的制定
由于本次升級過程沒有對原數(shù)據(jù)庫做任何改動,數(shù)據(jù)的遷移過程只是在邏輯層面將數(shù)據(jù)進(jìn)行導(dǎo)出并導(dǎo)入至新數(shù)據(jù)庫中,除了IP地址有所變動,并不會對原環(huán)境產(chǎn)生任何改變。所以,如果萬一升級失敗或出現(xiàn)其他不可預(yù)見性的問題,直接啟動原來數(shù)據(jù)庫即可恢復(fù)正常業(yè)務(wù),完成緊急情況下的回退。
3.5 容災(zāi)方案
通過對磁帶庫和Oracle自帶的DataGuard及GoldenGate等技術(shù)的比較,結(jié)合已有數(shù)據(jù)庫環(huán)境及數(shù)據(jù)量的大小,我們考慮利用DataGuard來進(jìn)行容災(zāi),并完全可以勝任,同時DataGuard技術(shù)也是Oracle高可用體系架構(gòu)(MAA)中的數(shù)據(jù)同步技術(shù)。具體方法為:搭建一個DataGuard。它是在Primary數(shù)據(jù)庫(住數(shù)據(jù)庫)與Standby數(shù)據(jù)庫(備庫)間通過將Redo Entry或者歸檔日志同步傳送到備庫應(yīng)用,來保證數(shù)據(jù)的同步。備庫作為主數(shù)據(jù)庫的備份,可以實(shí)現(xiàn)快速切換與災(zāi)難恢復(fù),使得由于數(shù)據(jù)庫故障而帶來的損失降至最低。并且在oracle 11g當(dāng)中,可使備庫一邊應(yīng)用日志一邊提供只讀訪問。
升級完成后,整個系統(tǒng)的性能都得到了極大的改善,業(yè)務(wù)繁忙時爭搶資源的情況得到很好的解決,客戶端程序響應(yīng)速度明顯加快,特別是對于之前問題較嚴(yán)重的門診收費(fèi)、掛號,和需要進(jìn)行大量查詢計算才能完成業(yè)務(wù)的部門效果尤為明顯??傊?,由于我們詳盡的分析和充分的準(zhǔn)備以及方案的正確可行,我們順利的完成了我院第一次HIS系統(tǒng)升級工作,為以后的相關(guān)工作積累了寶貴的經(jīng)驗(yàn)。
[1]支春明. 影響數(shù)據(jù)庫性能的因素分析及改進(jìn)策略[J]. 中國高新技術(shù)企業(yè). 2008,23(1):151-152.
[2] 賴小惠,柯本學(xué),許金惜. 我院HIS升級與改造的必要性及對策探討[J]. 廣州醫(yī)藥 2009,40(1):46-34.
[3] 吉亞力,胡呈煒,張輝. HIS服務(wù)器及數(shù)據(jù)庫升級的實(shí)現(xiàn)[J]. 醫(yī)療衛(wèi)生裝備 2011,32(5): 12-1053/R.
[4] 徐金建 . HIS升級—32位操作系統(tǒng)SQL2000到64位SQL2005遷移[J]. 醫(yī)療衛(wèi)生裝備 2012,33(5): 12-1053/R.
[5] 劉曉輝 . HIS服務(wù)器及數(shù)據(jù)庫升級前后性能的對比研究[J]. 醫(yī)療衛(wèi)生裝備 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