劉輝
摘 要:作為一款實(shí)時(shí)、快捷的信息存取及交互軟件, OLAP對(duì)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的傳輸至關(guān)重要?;诖耍Y(jié)合OLAP的相關(guān)概念,分析了OLAP的主要特征,探究了OLAP與關(guān)系數(shù)據(jù)庫(kù)之間的關(guān)聯(lián)性,總結(jié)了基于關(guān)系數(shù)據(jù)庫(kù)的OLAP的應(yīng)用優(yōu)勢(shì)。
關(guān)鍵詞:OLAP;聯(lián)機(jī)分析處理
近年來(lái),隨著計(jì)算機(jī)和信息處理技術(shù)在民航領(lǐng)域的廣泛應(yīng)用,越來(lái)越復(fù)雜的軟件系統(tǒng)已大量存在于這些領(lǐng)域的科技工作和實(shí)際應(yīng)用中。隨著目前民航航班量的與日俱增,這也使得空中交通管制人員與設(shè)備維護(hù)人員的工作量在不斷增加。伴隨著近些年自動(dòng)化系統(tǒng)也陸陸續(xù)續(xù)出現(xiàn)各種大大小小的故障,有些屬于硬件故障,有些屬于軟件故障,這些故障每次都需要花費(fèi)技術(shù)維護(hù)人員大量時(shí)間去找出故障點(diǎn)。因此,為提高技術(shù)維護(hù)人員工作效率,降低維護(hù)成本,開(kāi)發(fā)一套故障決策分析系統(tǒng)的意義非常重大,同時(shí)這也是民航空管邁向大數(shù)據(jù)時(shí)代的一大步。
一、故障決策分析系統(tǒng)的背景及意義
故障決策分析系統(tǒng)是指通過(guò)調(diào)用各種空管自動(dòng)化系統(tǒng)的信息資源,結(jié)合相關(guān)技術(shù)工具實(shí)現(xiàn)對(duì)特定故障問(wèn)題進(jìn)行分析,建立模型,模擬決策過(guò)程和方案的計(jì)算機(jī)應(yīng)用系統(tǒng)。目前,大部分故障決策分析系統(tǒng)是利用軟件工程中得到的知識(shí),建立方法庫(kù)或模型庫(kù)實(shí)現(xiàn)故障決策支持,而在空管自動(dòng)化系統(tǒng)運(yùn)行過(guò)程中產(chǎn)生的海量數(shù)據(jù)既包含了空管自動(dòng)化系統(tǒng)的運(yùn)行狀態(tài),也可能會(huì)產(chǎn)生大大小小的故障問(wèn)題。如果將這些數(shù)據(jù)進(jìn)行充分利用,可以提高維護(hù)人員故障分析決策的有效性,使技術(shù)維護(hù)人員工作效率更高,降低維護(hù)成本。故障分析決策支持系統(tǒng)可以通過(guò)相關(guān)技術(shù)對(duì)空管自動(dòng)化系統(tǒng)中的海量歷史數(shù)據(jù)進(jìn)行采集、處理、分析、挖掘、比對(duì)、預(yù)測(cè)與展示,歸納出目前空管該套正在運(yùn)行設(shè)備的運(yùn)行趨勢(shì),使技術(shù)人員可以準(zhǔn)確把握空管自動(dòng)化系統(tǒng)的整體運(yùn)行狀況,有效的找出準(zhǔn)確無(wú)誤的故障點(diǎn)。
OLAP聯(lián)機(jī)分析處理正是為了滿足這種需求而設(shè)計(jì)的,這種軟件技術(shù)是基于共享多維信息的,可以根據(jù)技術(shù)分析人員的要求針對(duì)特定問(wèn)題對(duì)海量數(shù)據(jù)進(jìn)行快速、靈活的聯(lián)機(jī)數(shù)據(jù)訪問(wèn)和分析,然后通過(guò)前端展現(xiàn)技術(shù)將查詢結(jié)果以一種對(duì)故障分析決策人員來(lái)說(shuō)相對(duì)比較直觀、容易理解的形式反饋回來(lái)。
二、故障決策分析系統(tǒng)的開(kāi)發(fā)調(diào)研
為了實(shí)現(xiàn)這樣一個(gè)完整的故障分析決策系統(tǒng),為空管技術(shù)人員提供統(tǒng)一的、快速的、準(zhǔn)確的故障設(shè)備數(shù)據(jù)分析平臺(tái),需要用到的技術(shù)不僅包括OLAP聯(lián)機(jī)分析處理技術(shù),還包括數(shù)據(jù)倉(cāng)庫(kù)技術(shù)、前端展現(xiàn)技術(shù)等。
首先,從故障分析決策系統(tǒng)的概念、發(fā)展歷程及現(xiàn)狀入手,闡述了數(shù)據(jù)驅(qū)動(dòng)型故障分析決策系統(tǒng)在空管自動(dòng)化系統(tǒng)中的作用,并介紹了ETL、數(shù)據(jù)倉(cāng)庫(kù)、OLAP聯(lián)機(jī)分析處理等相關(guān)的技術(shù)與理論。
其次,根據(jù)空管自動(dòng)化系統(tǒng)常見(jiàn)問(wèn)題故障進(jìn)行了需求分析,并依此對(duì)故障分析決策系統(tǒng)的架構(gòu)進(jìn)行了詳細(xì)設(shè)計(jì)。
最后,對(duì)系統(tǒng)的具體實(shí)現(xiàn)過(guò)程進(jìn)行了詳細(xì)的介紹,包括數(shù)據(jù)ETL過(guò)程、數(shù)據(jù)倉(cāng)庫(kù)的構(gòu)建、OLAP數(shù)據(jù)分析層及系統(tǒng)中報(bào)表的具體實(shí)現(xiàn)過(guò)程。并進(jìn)一步針對(duì)在實(shí)現(xiàn)OLAP聯(lián)機(jī)分析處理過(guò)程中如何提高其性能進(jìn)行了詳細(xì)研究。故障分析決策系統(tǒng)作為一種先進(jìn)的現(xiàn)代信息技術(shù),能夠很好的為空管技術(shù)人員提供數(shù)據(jù)支持,提高決策的有效性。
三、故障決策分析系統(tǒng)的相關(guān)技術(shù)及理論
(一)數(shù)據(jù)倉(cāng)庫(kù)技術(shù)
數(shù)據(jù)倉(cāng)庫(kù)的應(yīng)用較為廣泛,在行業(yè)中扮演重要角色、占據(jù)較重要地位的有零售、保險(xiǎn)、電信等,這些企業(yè)借助數(shù)據(jù)倉(cāng)庫(kù)技術(shù)的力量可以從日常積累的大規(guī)模歷史數(shù)據(jù)中探尋這些數(shù)據(jù)之間的關(guān)系,并從這些關(guān)系中挖掘出一定的信息,掌握企業(yè)的整體運(yùn)行情況,進(jìn)而做出正確的決策。
1、數(shù)據(jù)倉(cāng)庫(kù)的特點(diǎn)
數(shù)據(jù)倉(cāng)庫(kù)與傳統(tǒng)的數(shù)據(jù)庫(kù)是有所不同的,傳統(tǒng)數(shù)據(jù)庫(kù)是未經(jīng)整理的一大堆數(shù)據(jù)集,是分散的、片段的、不完整的,無(wú)法直接對(duì)其進(jìn)行分析處理, 而數(shù)據(jù)倉(cāng)庫(kù)是對(duì)傳統(tǒng)數(shù)據(jù)庫(kù)進(jìn)行萃取之后形成的一個(gè)系統(tǒng)的數(shù)據(jù)子集合,這個(gè)數(shù)據(jù)集合的特點(diǎn)包括面向主題、整合性、長(zhǎng)期性以及穩(wěn)定性。
2、雪花模型與星型模型
事實(shí)表和維度表是數(shù)據(jù)倉(cāng)庫(kù)中最主要的兩種表,在數(shù)據(jù)倉(cāng)庫(kù)中扮演著不同的角色,前者用來(lái)存儲(chǔ)數(shù)據(jù),通過(guò)外鍵與維度表相連,后者用來(lái)存儲(chǔ)各個(gè)維度的信息,包括維度的層次、類別等,一個(gè)維度至少使用一張維度表進(jìn)行存儲(chǔ),二者通過(guò)事實(shí)表中的外鍵及維度表中的關(guān)鍵字相聯(lián)系,如果每一個(gè)維度都與事實(shí)表相聯(lián),則是“星型模型”,但當(dāng)維度層次結(jié)構(gòu)復(fù)雜時(shí),維度數(shù)據(jù)冗余的現(xiàn)象就會(huì)出現(xiàn),為了避免這種情況,進(jìn)而在“星型模型”的基礎(chǔ)上衍生出了“雪花模型”。
從表1對(duì)星型模型和雪花模型的對(duì)比來(lái)看,星型模型存在的冗余數(shù)據(jù)可以使得在做統(tǒng)計(jì)查詢時(shí)很多情況下不用做外部連接,在這種情況下星型模型的效率比雪花模型要高一些,但雪花模型冗余數(shù)據(jù)比星型模型要少,因此雖然兩種結(jié)構(gòu)有一定差別,但沒(méi)有好壞之分,最主要的還是看項(xiàng)目的需求,看業(yè)務(wù)邏輯。例如,故障數(shù)據(jù)集市部分采用則星型模型以方便數(shù)據(jù)提取及對(duì)其進(jìn)行分析,而中間層使用雪花模型以降低數(shù)據(jù)冗余度。
(二)OLAP技術(shù)
OLAP技術(shù)全稱是Online Analytics Process,即聯(lián)機(jī)分析處理,是一種快速軟件技術(shù),是專門為針對(duì)復(fù)雜的決策分析進(jìn)行支持而設(shè)計(jì)的,這種軟件技術(shù)可以根據(jù)技術(shù)分析人員的復(fù)雜的查詢分析處理需求,對(duì)數(shù)據(jù)倉(cāng)庫(kù)中存儲(chǔ)的海量數(shù)據(jù)進(jìn)行快速、準(zhǔn)確、靈活的處理,處理完成之后,再通過(guò)一種相對(duì)比較直觀的、決策人員可以比較容易理解的形式將查詢結(jié)果反饋給決策人員,這樣,技術(shù)決策者就可以根據(jù)歷史故障反饋的信息迅速、準(zhǔn)確地掌握目前系統(tǒng)的故障情況。在數(shù)據(jù)倉(cāng)庫(kù)建立之后,為了使用戶可以從多個(gè)層次、多個(gè)角度、多個(gè)側(cè)面去對(duì)數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)進(jìn)行觀察,其中存儲(chǔ)的數(shù)據(jù)還需要對(duì)進(jìn)一步進(jìn)行分析處理,即多維數(shù)據(jù)分析,之后用戶便可以通過(guò)對(duì)多維數(shù)據(jù)集中的數(shù)據(jù)進(jìn)行鉆取、旋轉(zhuǎn)、切片和切塊等操作來(lái)觀察數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)了。簡(jiǎn)單來(lái)說(shuō),OLAP即對(duì)數(shù)據(jù)倉(cāng)庫(kù)中存儲(chǔ)的數(shù)據(jù)進(jìn)行分析和處理,主要是通過(guò)數(shù)據(jù)聚集技術(shù)以及多維數(shù)據(jù)集技術(shù),然后使用可視化工具將結(jié)果反饋給技術(shù)分析人員,供技術(shù)人員快速找出自動(dòng)化系統(tǒng)故障點(diǎn)。
四、故障決策分析系統(tǒng)的設(shè)計(jì)
故障決策分析系統(tǒng)是要將分散、獨(dú)立的數(shù)據(jù)源中的系統(tǒng)故障信息進(jìn)行分析處理,然后通過(guò)前臺(tái)展現(xiàn)方式為技術(shù)維護(hù)人員的決策提供支持。
首先,要從原有的自動(dòng)化系統(tǒng)中將相關(guān)的業(yè)務(wù)數(shù)據(jù)傳到數(shù)據(jù)倉(cāng)庫(kù)中,因?yàn)樵凶詣?dòng)化系統(tǒng)的數(shù)據(jù)可能以不同的形式存在不同的地方,如數(shù)據(jù)庫(kù)、文件、文檔等,所以需要對(duì)原有業(yè)務(wù)系統(tǒng)的相關(guān)業(yè)務(wù)數(shù)據(jù)進(jìn)行抽取、清洗、加工,然后裝載,這樣才能形成為基礎(chǔ)的分析數(shù)據(jù)而存儲(chǔ)的數(shù)據(jù)倉(cāng)庫(kù)。
然后,利用OLAP技術(shù)對(duì)數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)進(jìn)行處理,形成系統(tǒng)需要的各種數(shù)據(jù),存儲(chǔ)到OLAP數(shù)據(jù)庫(kù)中,為數(shù)據(jù)查詢做好準(zhǔn)備。
最后,存儲(chǔ)在OLAP數(shù)據(jù)庫(kù)中的數(shù)據(jù)只能供高級(jí)技術(shù)人員進(jìn)行查詢,為了使高級(jí)技術(shù)人員同樣可以方便快捷的得到需要的數(shù)據(jù),需要建立一個(gè)前臺(tái)界面,以報(bào)表的形式向高級(jí)技術(shù)人員展現(xiàn)數(shù)據(jù)。
系統(tǒng)總體架構(gòu)如圖1所示
五、故障決策分析系統(tǒng)的技術(shù)方案
故障決策分析系統(tǒng)的網(wǎng)絡(luò)架構(gòu)采用B/S架構(gòu),嚴(yán)格遵循TCP/IP協(xié)議,將主機(jī)與自動(dòng)化系統(tǒng)進(jìn)行連接,并從自動(dòng)化系統(tǒng)中獲取數(shù)據(jù)源。本套系統(tǒng)采用php技術(shù)面向服務(wù)器端腳本語(yǔ)言開(kāi)發(fā),其優(yōu)點(diǎn)可以跨平臺(tái)移植,方便不同平臺(tái)的技術(shù)人員使用。同時(shí)php技術(shù)也是當(dāng)今手機(jī)app應(yīng)用軟件后臺(tái)采用的流行開(kāi)發(fā)技術(shù),希望未來(lái)華北空管可以實(shí)現(xiàn)手機(jī)實(shí)時(shí)監(jiān)控系統(tǒng)的狀態(tài)。本套系統(tǒng)的數(shù)據(jù)庫(kù)采用MySQL,其與服務(wù)器端的交互非常迅速,并且穩(wěn)定可靠。
(一)建立數(shù)據(jù)抽取映射和數(shù)據(jù)標(biāo)準(zhǔn)化
為了實(shí)現(xiàn)ETL模塊的開(kāi)發(fā),成功的將基礎(chǔ)數(shù)據(jù)源中的數(shù)據(jù)加載到目標(biāo)數(shù)據(jù)倉(cāng)庫(kù)中,首先需要建立二者之間的映射關(guān)系,并且以一種直觀的方式將這種映射關(guān)系表現(xiàn)出來(lái)。例如,在空管自動(dòng)化系統(tǒng)中建立故障信息的編號(hào),在ETL過(guò)程中通過(guò)建立從數(shù)據(jù)源到目標(biāo)數(shù)據(jù)庫(kù)的映射表的方式來(lái)表示二者之間的映射關(guān)系,進(jìn)一步完成數(shù)據(jù)之間的映射,最后完成數(shù)據(jù)標(biāo)準(zhǔn)化的轉(zhuǎn)換過(guò)程。
可以看出,在分散的、獨(dú)立的系統(tǒng)中,同類信息的存儲(chǔ)方式、存儲(chǔ)內(nèi)容是不盡相同的,所以,在進(jìn)行數(shù)據(jù)抽取前需要將不同系統(tǒng)中存儲(chǔ)的數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化和規(guī)范化,以此來(lái)解決存在在異構(gòu)的OLTP系統(tǒng)中的數(shù)據(jù)的一些問(wèn)題,如相互矛盾的問(wèn)題、不一致性問(wèn)題等。
(二)ETL程序的實(shí)現(xiàn)
數(shù)據(jù)ETL過(guò)程,主要是將數(shù)據(jù)從基礎(chǔ)數(shù)據(jù)源中提取、轉(zhuǎn)化、加載到目標(biāo)數(shù)據(jù)倉(cāng)庫(kù)中去,各種ETL開(kāi)發(fā)工具、SQL語(yǔ)句、ETL開(kāi)發(fā)工具與SQL語(yǔ)句結(jié)合是其主要的三種開(kāi)發(fā)方式。在故障決策分析系統(tǒng)中的ETL開(kāi)發(fā)是通過(guò)php技術(shù)組建進(jìn)行ETL開(kāi)發(fā)工作的,通過(guò)php技術(shù)來(lái)開(kāi)發(fā)ETL程序一般需要建立控制流和數(shù)據(jù)流。
(三)多維數(shù)據(jù)集的建立
在多維數(shù)據(jù)倉(cāng)庫(kù)中,數(shù)據(jù)以數(shù)據(jù)立方體(Data Cube)的形式進(jìn)行存儲(chǔ),而在用戶對(duì)數(shù)據(jù)立方體中的數(shù)據(jù)進(jìn)行分析之前,必須要對(duì)數(shù)據(jù)進(jìn)行預(yù)計(jì)算,生成立方體的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),亦即所謂的CUBE計(jì)算,計(jì)算順利完成之后用戶才可以從這個(gè)數(shù)據(jù)立方體中查找自己需要的數(shù)據(jù)。
(四)故障決策分析系統(tǒng)的前端
故障分析決策系統(tǒng)的前端,旨在讓用戶可以清晰地了解系統(tǒng)各指標(biāo)的展現(xiàn)方式,以及方便地對(duì)各指標(biāo)進(jìn)行橫向和縱向的深入分析。本系統(tǒng)以報(bào)表的方式,通過(guò)折線圖、柱形圖、餅圖等形式提供故障分析與趨勢(shì)分析來(lái)保障空管自動(dòng)化系統(tǒng)的安全,并且提供給技術(shù)人員操作維護(hù)方法建議,完全實(shí)現(xiàn)計(jì)算機(jī)的智能化。
六、結(jié)論
本文詳細(xì)探索了本文展開(kāi)研究的背景和研究?jī)?nèi)容,故障分析決策支持系統(tǒng)的發(fā)展和暢想,及數(shù)據(jù)驅(qū)動(dòng)型故障分析決策系統(tǒng)在空管自動(dòng)化系統(tǒng)中的作用。并對(duì)系統(tǒng)開(kāi)發(fā)過(guò)程中用到的技術(shù),如數(shù)據(jù)倉(cāng)庫(kù)、OLAP數(shù)據(jù)分析處理等進(jìn)行了介紹。
在系統(tǒng)設(shè)計(jì)部分中,首先對(duì)實(shí)際需求進(jìn)行了分析,并依此對(duì)故障分析決策系統(tǒng)的架構(gòu)進(jìn)行了設(shè)計(jì),介紹了系統(tǒng)設(shè)計(jì)中的ETL過(guò)程、數(shù)據(jù)倉(cāng)庫(kù)的建模。
在技術(shù)開(kāi)發(fā)方案部分中,詳細(xì)介紹了數(shù)據(jù)ETL過(guò)程、多維數(shù)據(jù)集的建立過(guò)程、系統(tǒng)報(bào)表開(kāi)發(fā)過(guò)程,希望未來(lái)可以就如何優(yōu)化多維數(shù)據(jù)集,提高多維數(shù)據(jù)集的查詢效率進(jìn)行深入研究。
進(jìn)入大數(shù)據(jù)時(shí)代,希望民航空管可以采用創(chuàng)新技術(shù)實(shí)現(xiàn)高效率的工作,為民航空管安全提供有力的維護(hù)保障條件。
參考文獻(xiàn):
[1]王珊.數(shù)據(jù)倉(cāng)庫(kù)技術(shù)與聯(lián)機(jī)分析處理[J].科技出版社,1998.
[2]王彥龍.企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)(EDW)原理,設(shè)計(jì)與實(shí)踐[M].電子工業(yè)出版社,2006.
[3]何玉潔,張俊超.數(shù)據(jù)倉(cāng)庫(kù)與OLAP實(shí)踐教程[M].清華大學(xué)出版社,2008.