翟油華

[摘 要]醫院信息系統(HIS)的建立,為醫療單位提供了大量的基礎數據。但在較小影響在線運行數據庫的前提下,如何為管理決策提供足夠信息,成為一個日益突出的問題。在大量醫療數據中進行有效分析,了解醫療業務的發展情況,就要充分利用數據倉庫技術來進行數據組織、存儲和分析。本文以對出院病人情況分析的主題為例,簡單說明了數據倉庫在醫院信息系統中的應用。
[關鍵詞]數據倉庫 醫院信息系統 數據挖掘
[中圖分類號]TP311[文獻標識碼]A[文章編號]1007-9416(2009)11-0059-02
目前, 隨著醫療信息技術的發展,大部分醫院已廣泛使用醫院信息管理系統。由于該系統大部分都是事務處理型的,數據的組織和存儲均是圍繞事務處理進行的,這樣的數據組織方式不利于大量的數據分析和處理,難以提供有效的決策支持信息。隨著數據庫技術的發展,出現了以支持決策為目的的數據倉庫技術。本文對此進行了討論。
1 數據倉庫簡介
1.1 數據倉庫的特點
數據倉庫之父 W.H.Inmon 定義數據倉庫是面向主題的、集成的、非易失的、并且隨時間變化的數據集合, 并用來支持管理人員的決策。所謂主題就是在較高的層次上將信息系統中的數據綜合、歸類, 并進行分析利用。集成是指對不同來源的數據進行清理和歸整后, 以面向主題的數據結構統一收集。非易失性則是指一般情況下不能對數據倉庫的數據進行修改。時間性變化是指不斷捕捉信息系統中的新數據加入到數據倉庫中。
1.2 數據倉庫的結構
數據倉庫的總體層次結構由基本功能層、管理層和環境支持層三部分組成。①基本功能層:包括從數據源抽取數據,對所抽取的數據進行篩選、清理,將清理后的數據加載到數據倉庫中,根據用戶的需求完成數據倉庫的復雜查詢、決策分析和知識的挖掘等功能;②管理層:包含數據管理與元數據管理兩部分,主要負責對數據倉庫中數據的抽取、清理、加載、更新和刷新等操作進行管理。只要使這些操作正常完成,才能源源不斷地為數據倉庫提供新的數據源,為使用者正確利用數據倉庫進行決策分析和知識挖掘;③環境支持層: 主要包含數據傳輸和數據倉庫基礎兩大部份。包括網絡協議、網絡操作系統、數據存貯系統等。
1.3 數據倉庫的設計過程
數據倉庫是一個循環往復的過程,通常涉及數據的選擇、變換、建模、評估、解釋模型、運用和鞏固模型等步驟。(數據倉庫設計的基本過程如下圖所示)。
2 在醫院信息決策系統中的應用
在醫院信息系統中,存儲動態增長迅速的明細表主要有門診收費信息、住院收費信息、醫囑信息、各種藥品或物資的進出庫明細等。這些信息可以是以病種、病人來源、治療方案、診治費用、采購計劃等為主題,來分析不同病種、發展趨勢、治療方法及治療效果、診治費用等等,以支持醫院內部控制和決策管理。有些流行病學的數據,也可利用數據倉庫進行主題研究。將醫院信息系統中的各部分應用集成在一起是一個復雜的工作,需要建立一個綜合的體系結構,這需要建立一個信息中心管理數據倉庫。以住院系統中出院病人情況為主題,并以 Microsoft Analysis Services為工具,簡要說明一下數據倉庫在醫院信息系統中的應用過程。數據倉庫的設計過程示意圖(見圖1)
2.1 確定主題
數據倉庫的所有數據是圍繞某一主題而進行組織和展開的,是在一個較高管理層次上對信息系統中的數據,按照某一具體的管理對象進行綜合、歸類而形成的分析對象。本文中,筆者研究的主題是對出院病人進行分析, 分析的內容為人數和費用。確定主題的過程, 就是確定事實表中所需數據的過程。
2.2 確定變化因素
變化因素是分析者認為可能對研究主題產生有意義影響的因素。變化因素的分析是數據倉庫建立的重要環節,在數據倉庫中, 也就是維度表的設計。這不僅要確定分析因素的內容,還要對分析因素進行粒度分析。所謂粒度分析,就是確定對因素的劃分程度。粒度的劃分,取決于問題的需要、原始數據的形態及設備的處理能力。本例中,對出院病人分析條件有:性別、年齡、住址、費用類別(公費、自費等) 、病種、轉歸、手術類別、住院天數、入院時間、出院時間等。其中,性別的粒度只有一層: 男、女和未定; 費用類別的粒度有兩層:第一層分完全自費和不完全自費, 第二層中不完全自費再分為各種比例付費方式; 住址的粒度有五層:第一層是國家,第二層是我國的大地區(如中南地區、東北地區等),第三層是省或直轄市及地區,第四層是縣市,第五層是本市的行政區。
2.3 建立中間數據庫
中間數據庫是事務數據庫與數據倉庫數據庫的橋梁。中間數據庫中應包含凈化整理后的事實表和維度表。事實表由事務數據中相關的表, 經過獲取、過濾、轉換、清理、合并,將所關心的數據重新整理而得來的。用 SQLServer 2005企業管理器,建 立 一 個 數 據 庫 實 例DW_mid。在其中建立相應所需的表。本例的事實表, 包括出院病人的ID號碼( 住院號)、姓名、性別、年齡、住址、費用類別、病種、轉歸、手術類別、住院天數、入院時間、出院時間、出院科室、病案等級、分類費用及總費用等。這些數據可從事務數據庫的備份文件,經整理而得。事實表具體設計見表1:事實表。
2.4 建立數據倉庫數據庫
根據主題要求, 運用建庫工具, 建立數據倉庫。運用 Microsoft Analysis Services 建立數據倉庫的主要步驟如下:
2.4.1 建立與分析服務器與中間數據庫的聯接
在分析器管理工具中新建一個數據庫 original,并對數據源進行配置(連接 DW_mid),測試連接成功后即可使用。
2.4.2 創建多維數據集
創建數據倉庫的最終目的是要從大量的數據中尋找出可以用于決策的數據, 而多維數據集提供一種便于使用的查詢數據機制,不但快捷,而且響應時間一致。最終用戶可以使用客戶端應用程序,連接到分析管理器, 并查詢該服務器上的多維數據集。
(1)創建維度。維度是多維數據集的一種結構特性,是描述事實數據表中數據類別( 級別) 的有組織的層次結構。
維度表中,各標準維度表(非時間維度) 一般要根據數據特點和分析需要來建立。如性別、地址、費用類別等,這有些類似于事務數據庫中的字典表。時間維度表可選擇系統提供的,本例選的是年、季、月、日型的時間維度表。
Microsoft Analysis Services 中, 維度的建立可以用向導工具方便實現。
(2)維度是創建多維數據集所必需的條件,創建多維數據集是對數據倉庫進行數據分析和挖掘的前提。有時候,多維數據集也稱為立方體。
多維數據集中,要從數據源中選擇事實數據表,并從中選擇用于定義度量值的數字列;再從已建立的維度中,選擇適用于本事實數據表的維度, 由此建立多維數據集。
Microsoft Anal-ysis Services 中,多維數據集的建立也可以用向導工具方便實現。
3 建立數據倉庫的思考
在醫院數據倉庫的建設過程中, 需要解決以下若干問題:
3.1 設計數據提取模式, 建立數據模型
要解決提取什么數據和如何整合編排數據的問題。例如, 對“院內感染監測指導系統”主題進行模式劃分, 確定從各個系統中所要抽取的表, 并確定表的關系模式。與院內感染密切相關的項目主要包括體溫的變化、醫囑的變化、病人診斷上的變化、檢驗、檢查結果的變化等。由此可以定義分析維度和分析度量。分析維度包括: 科室、病種、住院第幾天、住院總天數、體溫、診斷、檢驗項目、檢驗結果、醫囑等; 分析度量包括: 數量、對比值等。
3.2 數據的格式化問題
醫院的醫療信息系統是各類型數據的集合, 部分數據類型并不適用于建立數據庫。根據數據倉庫的特點, 解決數據的規范化和格式化問題是建立醫院數據倉庫的一個首要問題。在數據采集時采取格式化錄入, 是解決這個問題的有效方法, 但目前的 HIS、PACS 還有相當多的信息錄入沒有固定格式。另外, 自由格式醫療文檔以及圖像、圖表的信息如何運用在數據倉庫中也是需要解決的難題。
3.3 結合臨床實施需求, 實現臨床數據倉庫的有效運用
通過廣泛收集臨床一線醫務人員對診療信息的需求,建立面向臨床實際的數據倉庫的應用模式,充分發揮臨床數據倉庫在提高診療質量,為病人提供優質服務的作用。
4 結語
應用數據倉庫技術后,查詢分析系統的面貌將煥然一新,不僅便于領導從眾多復雜的數據中及時、方便地獲取有價值的信息, 把握醫院動態,了解醫院需求,加強宏觀管理,輔助決策分析,同時也便于專業分析人員快速、準確地進行信息處理和預測分析,這對促進醫院持續、快速、健康地發展都具有很強的現實和戰略意義。
[參考文獻]
[1] 陳京民.數據倉庫與數據挖掘技術[M].北京:電子工業出版社,2002.
[2] 馬應章.數據倉庫的概念、技術及應用[J].中國計算機用戶,2003,4.
[3] 康博創作室.SQLServer 2000 數據倉庫設計和使用指南[M].清華大學出版社,2001.