楊霜英,于京杰
南京軍區(qū)南京總醫(yī)院信息科, 南京 210002
醫(yī)院小型數(shù)據(jù)中心的升級(jí)實(shí)例
楊霜英,于京杰
南京軍區(qū)南京總醫(yī)院信息科, 南京 210002
針對(duì)南京軍區(qū)南京總醫(yī)院信息系統(tǒng)中小型數(shù)據(jù)中心升級(jí)的實(shí)際情況,詳細(xì)介紹了數(shù)據(jù)中心的升級(jí)方案、系統(tǒng)結(jié)構(gòu)、主要技術(shù)特點(diǎn)及實(shí)施過程,以期為其他醫(yī)院在對(duì)數(shù)據(jù)中心進(jìn)行升級(jí)時(shí)提供有益的參考。
數(shù)據(jù)中心;數(shù)據(jù)庫;數(shù)據(jù)遷移;系統(tǒng)容災(zāi)
南京軍區(qū)南京總醫(yī)院全軍腎臟病研究所信息系統(tǒng)主要包括:門診電子病歷系統(tǒng)、血透電子病歷系統(tǒng)、腹膜透析電子病歷系統(tǒng)、病區(qū)電子病歷系統(tǒng)、臨床專科數(shù)據(jù)分析系統(tǒng)、電子病歷專病模板等系統(tǒng)。由于現(xiàn)有設(shè)備運(yùn)行時(shí)間較長(zhǎng),故障率明顯增高,從而影響信息系統(tǒng)數(shù)據(jù)中心的運(yùn)行穩(wěn)定性和數(shù)據(jù)安全性[1]。另一方面,隨著醫(yī)療業(yè)務(wù)對(duì)信息系統(tǒng)的依賴和需求越來越高,對(duì)系統(tǒng)資源也提出了更高的要求。原有信息系統(tǒng)的數(shù)據(jù)中心在硬件和配置上已無法滿足未來業(yè)務(wù)發(fā)展需要,迫切需要對(duì)信息系統(tǒng)中數(shù)據(jù)中心進(jìn)行升級(jí)。
醫(yī)院為滿足未來可預(yù)見的業(yè)務(wù)發(fā)展,以及解決目前醫(yī)院信息系統(tǒng)中確實(shí)存在的軟、硬件風(fēng)險(xiǎn),提高業(yè)務(wù)系統(tǒng)的性能和增強(qiáng)業(yè)務(wù)系統(tǒng)的擴(kuò)展性[2],于2013年對(duì)該研究所原有數(shù)據(jù)中心的軟、硬件平臺(tái)進(jìn)行了系統(tǒng)升級(jí)。在升級(jí)過程中,將原有系統(tǒng)資源設(shè)備作為容災(zāi)備份,建設(shè)了完善的系統(tǒng)軟、硬件平臺(tái),有效保證了信息系統(tǒng)中數(shù)據(jù)中心的運(yùn)行穩(wěn)定性和數(shù)據(jù)安全性。
該文針對(duì)醫(yī)院信息系統(tǒng)的小型數(shù)據(jù)中心升級(jí)的實(shí)際情況,詳細(xì)介紹了數(shù)據(jù)中心的升級(jí)方案、系統(tǒng)結(jié)構(gòu)、主要技術(shù)特點(diǎn)及實(shí)施過程,以期為其他擬升級(jí)信息系統(tǒng)數(shù)據(jù)中心的醫(yī)院提供參考。
醫(yī)院信息系統(tǒng)的小型數(shù)據(jù)中心在系統(tǒng)升級(jí)前主要存在以下問題:
1.1 硬件故障率高
原有設(shè)備已過保,故障率明顯增高,影響數(shù)據(jù)中心運(yùn)行的穩(wěn)定性和數(shù)據(jù)的安全性。
1.2 架構(gòu)設(shè)計(jì)上存在缺陷
原先對(duì)于服務(wù)器及存儲(chǔ)的架構(gòu)設(shè)計(jì)存在單點(diǎn)故障問題。出現(xiàn)故障時(shí),恢復(fù)時(shí)間長(zhǎng),且無法保證數(shù)據(jù)恢復(fù)的完整性。
1.3 存儲(chǔ)空間使用受限
存儲(chǔ)空間使用已過半,數(shù)據(jù)庫歸檔使用每天增長(zhǎng);在后期應(yīng)用軟件的部分升級(jí)中,會(huì)采用大量XML方式存儲(chǔ),明顯增加數(shù)據(jù)空間的使用量;原柜體槽位已配滿,無法在原存儲(chǔ)設(shè)備上擴(kuò)容磁盤。
1.4 服務(wù)器內(nèi)存和CPU使用率高
自2002年以來,軟件功能采取了較多業(yè)務(wù)功能的定制開發(fā)和管理功能開發(fā),大幅增加了數(shù)據(jù)庫服務(wù)器的使用率。在高峰期間,部分應(yīng)用系統(tǒng)資源的CPU負(fù)荷率已接近100%。
1.5 接口數(shù)據(jù)交換效率低
系統(tǒng)接口程序大多采用了早期直連接口程序方式,大規(guī)模數(shù)據(jù)交換時(shí)效率低、穩(wěn)定性差。若采用現(xiàn)在主流的WebService方式需要配備更好的硬件資源,而目前的設(shè)備無法滿足新的要求。
系統(tǒng)升級(jí)前,數(shù)據(jù)中心的原有系統(tǒng)結(jié)構(gòu)如圖1所示。該結(jié)構(gòu)對(duì)于服務(wù)器及存儲(chǔ)架構(gòu)在設(shè)計(jì)上存在單點(diǎn)故障問題。當(dāng)出現(xiàn)故障時(shí),恢復(fù)時(shí)間長(zhǎng),且無法保證數(shù)據(jù)恢復(fù)的完整性。
圖1 原有系統(tǒng)的架構(gòu)
在充分考慮現(xiàn)有硬件系統(tǒng)條件的基礎(chǔ)上,借鑒目前主流技術(shù)來設(shè)計(jì)升級(jí)系統(tǒng)[3-4],所提出升級(jí)系統(tǒng)的架構(gòu)如圖2所示。
圖2 升級(jí)后數(shù)據(jù)中心的系統(tǒng)架構(gòu)
系統(tǒng)架構(gòu)的升級(jí)主要為以下幾個(gè)方面:
①增加了兩臺(tái)高性能IBM小型機(jī)P710作為數(shù)據(jù)庫服務(wù)器,實(shí)現(xiàn)HA 架構(gòu),代替原有刀片小機(jī);
②增加4臺(tái)IBM X3650服務(wù)器作為應(yīng)用服務(wù)器,并采用虛擬化方式部署,組建虛擬化應(yīng)用服務(wù)器集群,實(shí)現(xiàn)應(yīng)用服務(wù)器資源動(dòng)態(tài)分配和高可用性;
③原有刀片小機(jī)實(shí)現(xiàn)數(shù)據(jù)庫服務(wù)器容災(zāi),用于支撐查詢統(tǒng)計(jì)業(yè)務(wù),利用第三方程序進(jìn)行數(shù)據(jù)庫跨版本數(shù)據(jù)同步;
④增加一臺(tái)IBM V7000作為核心數(shù)據(jù)存儲(chǔ)服務(wù)器,原DS4700機(jī)作為數(shù)據(jù)容災(zāi);
⑤增加兩臺(tái)光纖交換機(jī),實(shí)現(xiàn)數(shù)據(jù)鏈路冗余。
升級(jí)技術(shù)方案的選擇必須建立在對(duì)整個(gè)系統(tǒng)軟硬件環(huán)境以及業(yè)務(wù)系統(tǒng)的各個(gè)環(huán)節(jié)具體分析基礎(chǔ)之上。方案的選擇策略是必須滿足業(yè)務(wù)操作可以容忍的停機(jī)時(shí)間,并重點(diǎn)考慮整個(gè)系統(tǒng)數(shù)據(jù)的完整性、安全性和平滑性,選擇成熟和穩(wěn)妥的技術(shù)方案,盡可能減少對(duì)生產(chǎn)系統(tǒng)的影響[5-6]。尤其在數(shù)據(jù)遷移時(shí),重點(diǎn)要考慮數(shù)據(jù)一致性問題,需要定制嚴(yán)格的數(shù)據(jù)轉(zhuǎn)儲(chǔ)方案,描述數(shù)據(jù)之間的邏輯關(guān)系,并且需要在遷移后進(jìn)行嚴(yán)格的數(shù)據(jù)校驗(yàn)。考慮到整個(gè)系統(tǒng)數(shù)據(jù)并不是十分龐大復(fù)雜,但也具有一定的遷移難度和靈活性。綜合以上因素考慮,最終選擇完全自主開發(fā)程序進(jìn)行遷移方式,采用JAVA語言編寫程序,根據(jù)業(yè)務(wù)需要組建軟件。此方式完全依賴于應(yīng)用軟件自身,可以做到按日期,按患者就診將所有應(yīng)用數(shù)據(jù)轉(zhuǎn)移到目標(biāo)數(shù)據(jù)庫中。首先,在不停機(jī)情況下按照日期將基本不變的歷史數(shù)據(jù)遷移到目標(biāo)服務(wù)器中;然后,在系統(tǒng)停機(jī)情況下,將正在使用的一周內(nèi)的所有實(shí)時(shí)數(shù)據(jù)遷移到目標(biāo)服務(wù)器中,整個(gè)遷移時(shí)間不超過4 h。
數(shù)據(jù)中心升級(jí)是一個(gè)系統(tǒng)化過程,主要相關(guān)技術(shù)如下:
4.1 數(shù)據(jù)庫遷移技術(shù)
將數(shù)據(jù)庫服務(wù)器的操作系統(tǒng)版本由IBM AIX 5升級(jí)至AIX 6,數(shù)據(jù)庫版本由Oracle 9i升級(jí)至Oracle 11G[4]。由于應(yīng)用數(shù)據(jù)庫表結(jié)構(gòu)中采用了大量LONG等大字段類型字段,若采用傳統(tǒng)的數(shù)據(jù)庫升級(jí)會(huì)對(duì)字段類型進(jìn)行改變,應(yīng)用程序需要修改。故應(yīng)采用數(shù)據(jù)庫遷移技術(shù)編寫數(shù)據(jù)遷移程序,實(shí)現(xiàn)數(shù)據(jù)的安全遷移。主要包括應(yīng)用程序分析、表結(jié)構(gòu)分析、程序開發(fā)及遷移測(cè)試及正式遷移等過程。
4.2 應(yīng)用服務(wù)器遷移技術(shù)
原應(yīng)用服務(wù)器的操作系統(tǒng)為Windows 2003企業(yè)版,中間件為WAS 6.0。原應(yīng)用服務(wù)器是按照功能進(jìn)行劃分,如住院、門診、接口,等,不能夠充分使用服務(wù)器的資源。升級(jí)后,采用了虛擬化應(yīng)用服務(wù)器部署及軟負(fù)載均衡的工作方式,實(shí)現(xiàn)了應(yīng)用資源的動(dòng)態(tài)平衡和最大化利用,但這需要對(duì)部分應(yīng)用程序進(jìn)行修改及對(duì)中間件WAS 6.0進(jìn)行升級(jí)[7]。
4.3 數(shù)據(jù)庫容災(zāi)技術(shù)
為充分利用原有硬件設(shè)備,提高數(shù)據(jù)的安全性,在原數(shù)據(jù)庫服務(wù)器及應(yīng)用服務(wù)器遷移后,對(duì)原有刀片小機(jī)進(jìn)行操作系統(tǒng)的安裝、數(shù)據(jù)庫安裝及HA配置。對(duì)于數(shù)據(jù)庫的雙機(jī)配置,應(yīng)采用數(shù)據(jù)容災(zāi)技術(shù),制定同步策略,并編寫數(shù)據(jù)同步程序。容災(zāi)數(shù)據(jù)庫建立后,還應(yīng)根據(jù)實(shí)際需求,實(shí)現(xiàn)部分?jǐn)?shù)據(jù)的查詢分離。
系統(tǒng)升級(jí)的實(shí)施過程主要包括:數(shù)據(jù)遷移、應(yīng)用系統(tǒng)修改及測(cè)試、數(shù)據(jù)容災(zāi)系統(tǒng)程序開發(fā)及測(cè)試、應(yīng)用系統(tǒng)容災(zāi)及負(fù)載均衡,等。
5.1 數(shù)據(jù)遷移
在數(shù)據(jù)庫服務(wù)器升級(jí)過程中,數(shù)據(jù)遷移和切換至關(guān)重要,將數(shù)據(jù)從舊數(shù)據(jù)庫遷移到新數(shù)據(jù)庫的過程中必須保證數(shù)據(jù)的安全、無損及完整,決不允許丟失和損壞。由于醫(yī)院業(yè)務(wù)系統(tǒng)具有7×24 h不中斷的特點(diǎn),要求服務(wù)器因升級(jí)而停用的時(shí)間越短越好。為了使遷移對(duì)醫(yī)院醫(yī)療活動(dòng)影響的最小化,首先應(yīng)深入分析和全面考量信息系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)關(guān)系后再進(jìn)行數(shù)據(jù)遷移[8]。數(shù)據(jù)遷移過程如圖3所示。
圖3 數(shù)據(jù)遷移過程示意圖
數(shù)據(jù)遷移主要包括以下工作流程:
①安裝Oracle11g數(shù)據(jù)庫。
②數(shù)據(jù)庫遷移前準(zhǔn)備以及制定遷移計(jì)劃。用移植工具進(jìn)行數(shù)據(jù)庫結(jié)構(gòu)比較,并根據(jù)比較的結(jié)果修改數(shù)據(jù)庫結(jié)構(gòu);用移植工具維護(hù)源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫之間表的對(duì)應(yīng)關(guān)系。設(shè)定住院基礎(chǔ)數(shù)據(jù)同步的相關(guān)配置。
③遷移程序編寫。查看數(shù)據(jù)庫表結(jié)構(gòu);根據(jù)表結(jié)構(gòu)列出相關(guān)業(yè)務(wù)表;編寫遷移數(shù)據(jù)的程序;安裝測(cè)試數(shù)據(jù)庫,然后進(jìn)行數(shù)據(jù)遷移測(cè)試;根據(jù)測(cè)試結(jié)果再次進(jìn)行修改程序;測(cè)試無誤后,將程序進(jìn)行封裝打包。
④數(shù)據(jù)庫遷移測(cè)試及優(yōu)化。數(shù)據(jù)遷移工具調(diào)試完成及遷移配置工作完成后,測(cè)試一下同步這些數(shù)據(jù)需要多長(zhǎng)時(shí)間,同時(shí)針對(duì)性地進(jìn)行遷移性能優(yōu)化工作,即將基礎(chǔ)數(shù)據(jù)及大量歷史數(shù)據(jù)進(jìn)行遷移,并進(jìn)行優(yōu)化。
⑤系統(tǒng)運(yùn)行以及跟蹤處理。驗(yàn)證系統(tǒng)在新數(shù)據(jù)庫中是否正常運(yùn)行,并進(jìn)行數(shù)據(jù)庫的優(yōu)化工作。
5.2 應(yīng)用系統(tǒng)修改及測(cè)試
數(shù)據(jù)庫進(jìn)行升級(jí)及遷移后,為保證應(yīng)用系統(tǒng)正常運(yùn)行,必須要處理跨版本后大字段及JDBC驅(qū)動(dòng)升級(jí)后引發(fā)的問題。要對(duì)應(yīng)用系統(tǒng)(包括門診系統(tǒng)、住院系統(tǒng)、檢驗(yàn)系統(tǒng)、血透系統(tǒng)、接口系統(tǒng)、科內(nèi)檢查系統(tǒng)、模板應(yīng)用等其他系統(tǒng))進(jìn)行詳細(xì)地測(cè)試和修改,在沒有問題的情況下逐步遷移所有應(yīng)用系統(tǒng),并繼續(xù)跟蹤系統(tǒng),對(duì)發(fā)現(xiàn)的問題進(jìn)行及時(shí)修改。
5.3 數(shù)據(jù)容災(zāi)系統(tǒng)程序開發(fā)及測(cè)試
原服務(wù)器作為容災(zāi)以及OLAP計(jì)算的服務(wù)器,升級(jí)后的數(shù)據(jù)需同步到容災(zāi)服務(wù)器。由于兩個(gè)數(shù)據(jù)庫是同種但不同版本,需開發(fā)數(shù)據(jù)容災(zāi)系統(tǒng)程序來實(shí)現(xiàn)數(shù)據(jù)庫的同步,保證醫(yī)院數(shù)據(jù)的完整性。應(yīng)對(duì)容災(zāi)程序的性能及穩(wěn)定性進(jìn)行測(cè)試,進(jìn)行數(shù)據(jù)同步性測(cè)試,完善后啟用數(shù)據(jù)容災(zāi)。在數(shù)據(jù)容災(zāi)系統(tǒng)程序中,可創(chuàng)建一個(gè)程序觸發(fā)器,加入服務(wù)器任務(wù)計(jì)劃,在每天晚上12點(diǎn)開始程序同步工作,這樣既可滿足數(shù)據(jù)的同步,又不影響系統(tǒng)的正常使用。
5.4 應(yīng)用系統(tǒng)容災(zāi)及負(fù)載均衡
數(shù)據(jù)庫升級(jí)后,為提高現(xiàn)有系統(tǒng)的穩(wěn)定性,需調(diào)整應(yīng)用系統(tǒng)的負(fù)載均衡分配,可將住院、門診、血透、檢驗(yàn)系統(tǒng)進(jìn)行虛擬化,建立統(tǒng)一的負(fù)載均衡系統(tǒng),以保證系統(tǒng)未來可以多路容災(zāi)。對(duì)于原有的數(shù)據(jù)庫,可以將對(duì)大數(shù)據(jù)量的OLAP類型的統(tǒng)計(jì)及數(shù)據(jù)分析工作轉(zhuǎn)移到該服務(wù)器上,以避免因?yàn)閿?shù)據(jù)的不斷增大而影響業(yè)務(wù)系統(tǒng)的運(yùn)行。
醫(yī)院小型數(shù)據(jù)中心的升級(jí)是一項(xiàng)復(fù)雜而細(xì)致的工程,它具有跨平臺(tái)、跨數(shù)據(jù)庫版本、大數(shù)據(jù)量、對(duì)停機(jī)時(shí)間及數(shù)據(jù)準(zhǔn)確性要求高等特點(diǎn)。
醫(yī)院小型數(shù)據(jù)中心升級(jí)后,優(yōu)化了原有系統(tǒng)架構(gòu),實(shí)現(xiàn)了存儲(chǔ)擴(kuò)容,提高了系統(tǒng)性能。而且由于全面升級(jí)了操作系統(tǒng)及數(shù)據(jù)庫版本,實(shí)現(xiàn)了數(shù)據(jù)及應(yīng)用的容災(zāi),極大地提高了數(shù)據(jù)庫的使用性能和系統(tǒng)的安全穩(wěn)定性。
半年多的實(shí)際應(yīng)用表明,軟硬件系統(tǒng)整體升級(jí)改造后,整個(gè)系統(tǒng)的性能得到了很大的改善,高峰時(shí)期爭(zhēng)用資源的情況得到了很好地解決,為醫(yī)護(hù)人員提供了更好的操作平臺(tái),客戶端應(yīng)用程序的響應(yīng)速度顯著提高,特別是對(duì)于以前響應(yīng)較慢的前臺(tái)工作站系統(tǒng)和需要進(jìn)行大量查詢和大量計(jì)算的復(fù)雜業(yè)務(wù),效果更為明顯。
實(shí)踐證明,該系統(tǒng)的升級(jí)流程具有普遍性及通用性,符合醫(yī)療信息化技術(shù)發(fā)展的要求,具有較高的實(shí)用性和推廣價(jià)值。
[1]李世川.信息系統(tǒng)數(shù)據(jù)庫升級(jí)方法研究及實(shí)現(xiàn)[J].醫(yī)療衛(wèi)生裝備,2012,33(1):51-53
[2]袁磊,劉宏生,王淮龍.醫(yī)院信息系統(tǒng)數(shù)據(jù)遷移的實(shí)現(xiàn)[J].中國醫(yī)療前沿,2009,4(22):123-124
[3]紹維忠,楊芙清.面向?qū)ο蟮南到y(tǒng)分析[M].北京:清華大學(xué)出版社,2006:25-70
[4]錢慎一.Oracle 11g從入門到精通[M].北京:中國水利水電出版社,2009:54-134
[5]歐應(yīng)栗,冉坤.異構(gòu)數(shù)據(jù)庫數(shù)據(jù)遷移的研究與實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī),2014,(2):56-59
[6]于紅彬.異構(gòu)數(shù)據(jù)遷移方法研究[J].電腦知識(shí)與技術(shù),2013,9(23):5217-5218
[7]羅林球,孟琦,李曉.異構(gòu)數(shù)據(jù)庫遷移的設(shè)計(jì)和實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2006,12(1):233-238
[8]刁興春,嚴(yán)浩,丁鯤.異構(gòu)數(shù)據(jù)轉(zhuǎn)換關(guān)鍵技術(shù)的實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2008,34(17):42-43
An example of upgrading of hospital small-data center
YangShuangying,YuJingjie
DepartmentofInformatics,NanjingGeneralHospitalofNanjingMilitaryCommandofPLA,Nanjing210002,China
Based on the actual situation of the upgrading of small-data center of Nanjing General Hospital of Nanjing Military Command of PLA, the paper introduces the upgrading scheme, system structure, main technological features and the implementation process of the data center in order to provide useful reference for other hospitals' upgrading of their data centers.
data center; database; data migration; disaster recovery system
2014-12-23
楊霜英(1965-),女,江蘇江陰人,本科,高級(jí)工程師,主要研究方向:醫(yī)院信息化建設(shè)、管理與應(yīng)用。
R-058;G434
A
1004-5287(2015)03-0302-03
:10.13566/j.cnki.cmet.cn61-1317/g4.201503018