陳德清 ,王問宇 ,楊海坤
(1.水利部水利信息中心,北京 100053;2.北京金水信息技術發(fā)展有限公司,北京 100053)
目前全國水利行業(yè)信息網絡基本建成并初步建成一批綜合數據庫,多種業(yè)務應用已逐步展開。為達到為水利綜合決策支持服務[1]的目標,需要提供面向主題的快速數據分析和面向宏觀決策目標的靈活的統(tǒng)計報表功能,借助于先進的數據倉庫和數據挖掘技術,并配合強大的前端數據展示軟件可以實現該目標。 本文針對水文業(yè)務分析需要,利用數據倉庫技術設計了水文數據倉庫總體結構,構建了面向水文主題的多維數據組織模式,開發(fā)面向水文主題的企業(yè)級數據倉庫。
在水利信息化建設項目中,通過各類業(yè)務應用系統(tǒng)建設積累了大量的基礎數據。來自不同業(yè)務系統(tǒng)的大量數據中往往隱藏著重要的規(guī)律,這些規(guī)律是決策者需要從系統(tǒng)中尋找的“金礦”。對數據進行整理得到信息,深入地分析信息得到關于這些事實的相關情況,這就是知識。如果將這些知識用在輔助決策上,會使決策更具科學性和可行性,知識又轉化成了智慧。通過水利數據倉庫的建設可以將盡可能多的相關數據整合到數據倉庫中,對整合后的數據進行集中處理,變異構為同構,變分割為融合,形成中心數據倉庫,為數據倉庫前端應用和其他企業(yè)級數據應用提供全景數據視圖。數據倉庫技術可以幫助用戶一目了然的洞察海量數據中的黃金數據,并以圖表等直觀方式獲得數據規(guī)律和知識,使用戶能夠快速獲得自己所需的數據片段,解決手工制作報表效率低等問題,并改變報表的發(fā)布方式。
水文數據倉庫是在各個原有分散的業(yè)務型信息系統(tǒng)的多個數據源的基礎上,建立起來的信息集成平臺,數據倉庫總體結構如圖1 所示。
圖1 數據倉庫總體結構
2.2.1 數據源
數據源包括現有業(yè)務系統(tǒng)中的各類數據資源和根據決策分析需求可能涉及的其它外部數據資源。業(yè)務數據包括:雨量、水位、流量、蒸發(fā)等觀測數據,測站基本信息數據、水文特征值等;外部數據(External Data)包括:行政區(qū)劃、流域水系等。
關于水文數據倉庫的業(yè)務數據存儲在降雨量、日蒸發(fā)量、河道水情、水庫水情、含沙量和氣溫水溫表表結構如表1~6 所示。測站字典表和時間、行政區(qū)和流域等維表表結構如表7~10 所示。
表1 降雨量表
表2 日蒸發(fā)量表
表3 河道水情表
表4 水庫水情表
表5 含沙量表
表6 水溫氣溫表
表7 時間維表
表8 測站字典
表9 行政區(qū)劃維表
表10 流域水系維表
2.2.2 水文數據倉庫邏輯模型設計
以水文主題數據為例,按照星型模式組織[4]的多維數據,由 1 個事實表和 4 個維表構成,水文數據倉庫邏輯模型如圖2 所示。事實表中包含了 4 個維度(時間、流域、河流和行政區(qū)劃)和7個度量(蒸發(fā)量、降水量、水位、流量、含沙量、輸沙率和水溫)。其中每個維表包含 1 組由底層映射到一般高層的屬性概念,如時間維表由屬性年、月、日和時形成一種層次,即:年—月—日—時。
圖2 水文數據倉庫邏輯模型
2.2.3 創(chuàng)建數據倉庫數據庫
當數據倉庫的邏輯結構設計完后,就可以創(chuàng)建物理數據倉庫。數據倉庫數據庫的創(chuàng)建可以在關系數據庫(SQL, Oracle,Sybase 等)中按照一般的建立數據庫的方法進行,然后把數據倉庫數據庫中設計的表創(chuàng)建好,數據類型依據原始數據庫中的各個表和字段的數據類型設置。由于數據倉庫數據庫的表結構與原始數據庫中的表結構基本一致,因此,創(chuàng)建數據倉庫數據庫的物理結構過程也可以在數據抽取、轉換和裝載階段完成。
ETL 負責將從業(yè)務系統(tǒng)或外部系統(tǒng)中獲得的數據,轉換和清洗成數據倉庫需要的格式和形態(tài),并在規(guī)定的時間裝入到數據倉庫中去。
聯機分析處理主要指的是多維分析,它提供將數據組織成多維立方體(OLAP 數據立方體),數據立方體的數據按照分析主題來組織,同時可根據分析的需求加入不同數據集市的數據,添加分析需要但數據倉庫中并沒有現成提供的計算等內容。用戶可以對這些數據立方體進行切片、旋轉、匯總等多角度的查詢和統(tǒng)計。查詢和統(tǒng)計方式完全出自用戶對業(yè)務的考慮,而不必關心數據的物理結構和技術上的組織形式。
1)查詢和報表是數據倉庫應用的最基本功能。由于數據倉庫擁有最完整的信息資源,基于商業(yè)智能系統(tǒng)的查詢和報表能夠提供比業(yè)務系統(tǒng)更豐富的信息,而且不會對日常的事務處理產生任何影響。
2)多維分析。根據上述表中的數據,按照不同的數據粒度[5],導出以日為時間粒度,以測站為空間粒度的匯總和統(tǒng)計數據(最大降雨量、最小降雨量、平均降雨量、最高水位、最低水位、平均水位、最大流量、最小流量、平均流量、最大來水量、最小來水量、平均來水量、最大蓄水量、最小蓄水量、平均蓄水量)。并進一步按旬、月、年進行匯總統(tǒng)計。在空間粒度上按照行政區(qū)(省區(qū)、地市和縣)、流域水系(1 級和 2 級流域及河流)進行匯總統(tǒng)計,對于降雨量統(tǒng)計平均雨量、暴雨站數、30 天無雨站數、超警戒水位站數、超保證水位站數、低于歷史最低水位站數。
通過 OLAP 可以直接在圖表上進行上卷、下鉆、切片、切塊、旋轉和查詢等分析數據的功能,并在該基礎上根據業(yè)務需求對數據進行深度挖掘,從而實現了傳統(tǒng)計算機系統(tǒng)中依賴圖形和表格分析觀察數據做不到的功能。
運用數據倉庫技術對各類水利業(yè)務系統(tǒng)中產生的海量信息進行綜合分析處理,實現宏觀統(tǒng)計數據與詳細業(yè)務數據之間的聯系。通過數據倉庫邏輯模型的設計與實現,從綜合數據庫或外部系統(tǒng)中抽取數據進行數據清洗、轉換,并裝載到數據倉庫中等過程,方便快速地為水利系統(tǒng)各行業(yè)提供統(tǒng)計分析信息,并可對信息進行多維統(tǒng)計分析,通過 OLAP 和數據挖掘工具篩選發(fā)現有價值的業(yè)務信息,為水利綜合決策支持服務。
[1]李建芬,劉波. 決策支持系統(tǒng)中數據倉庫的應用[J]. 山西電子技術,1998,(6):18-20.
[2]William H. Inmon. 數據倉庫[M]. 北京:北京機械工業(yè)出版社,2004.
[3]賈虹. 數據倉庫建立與應用[J]. 中國計算機用戶,1996,20:6-8.
[4]愈瑛,王軍. 淺談數據倉庫在供水企業(yè)中的應用[J]. 合肥工業(yè)大學學報(自然科學版),2006,29(10):1292-1295.
[5]余達征,索麗生. 數據倉庫技術在防洪調度智能決策支持系統(tǒng)中的應用[J]. 水利水電技術,1999,30 (2):43-45.