通信運營維護的發(fā)展,一直與信息技術的發(fā)展水平密不可分。從最早期的計算機數據處理,到今天廣為使用的計算機數據分析。每一次信息技術的發(fā)展都會帶來通信運營維護的變化。在其中,數據庫技術尤為重要。
數據庫系統(tǒng)直接和運營維護系統(tǒng)的核心——運營數據相關,負責數據的收集、存儲、更新和運算。隨著現(xiàn)代商用數據庫技術的發(fā)展,作為數據庫技術分支的數據倉庫技術為當前的運營維護系統(tǒng)進行進一步的數據分析和應用提供了重要的技術基礎。如何使用數據倉庫,合理利用數據倉庫提供的能力為運營系統(tǒng)服務,往往成為運營維護系統(tǒng)的重要問題。
在這樣的背景下,本系列結合通信運營維護的客觀需要,以重要的商用數據庫——DB2為例,主要闡述了當前重要的數據倉庫技術,以及如何在通信運營維護系統(tǒng)中去使用這些現(xiàn)代數據庫技術去支持運維工作。
一、數據庫和數據倉庫
數據庫已經在信息技術領域有了廣泛的應用,我們社會生活的各個部門,幾乎都有各種各樣的數據庫保存著與我們的生活息息相關的各種數據。作為數據庫的一個分支,數據倉庫概念的提出,相對于數據庫從時間上就近得多。美國著名信息工程專家 William Inmon 博士在90年代初提出了數據倉庫概念的一個表述,認為:“一個數據倉庫通常是一個面向主題的、集成的、隨時間變化的、但信息本身相對穩(wěn)定的數據集合,它用于對管理決策過程的支持。”
這里的主題,是指用戶使用數據倉庫進行決策時所關心的重點方面,如:收入、客戶、銷售渠道等;所謂面向主題,是指數據倉庫內的信息是按主題進行組織的,而不是像業(yè)務支撐系統(tǒng)那樣是按照業(yè)務功能進行組織的。
集成,是指數據倉庫中的信息不是從各個業(yè)務系統(tǒng)中簡單抽取出來的,而是經過一系列加工、整理和匯總的過程,因此數據倉庫中的信息是關于整個企業(yè)的一致的全局信息。
隨時間變化,是指數據倉庫內的信息并不只是反映企業(yè)當前的狀態(tài),而是記錄了從過去某一時點到當前各個階段的信息。通過這些信息,可以對企業(yè)的發(fā)展歷程和未來趨勢做出定量分析和預測。
二、數據倉庫的應用
單純從定義出發(fā),可能會把數據倉庫簡單地理解為僅僅是一個大型的數據存儲機制,是一個靜態(tài)的概念。實際上,數據倉庫更像一個過程,這個過程涉及數據的收集、整理和加工,生成決策所需要的信息,并且最終把這些信息提供給需要這些信息的使用者,供他們做出改善業(yè)務經營的正確決策。數據倉庫的重點與要求就是能夠準確、安全、可靠地從業(yè)務系統(tǒng)中取出數據,經過加工轉換成有規(guī)律信息之后,供管理人員進行分析使用。因此,數據倉庫是一個動態(tài)的過程,它的基礎,就是現(xiàn)代的數據庫技術。
單講概念,有些晦澀。任何技術都是為應用服務的,結合應用可以很容易地理解。以通信運維系統(tǒng)為例,數據庫是事務系統(tǒng)的數據平臺,客戶打的每一個電話,都會寫入數據庫,被記錄下來,這里,可以簡單地理解為用數據庫記帳。數據倉庫是分析系統(tǒng)的數據平臺,它從事務系統(tǒng)獲取數據,并做匯總、加工,為決策者提供決策的依據。比如,某地區(qū)某類用戶一個月打了多少個電話,都是多長時間的,發(fā)了多少短信,該用戶當前話費余額是多少。如果通話時間很長,而短信很少,那么該用戶就是一個偏語音通話的客戶了。
顯然,電話和短信的業(yè)務量是巨大的,通常以百萬甚至千萬來計算。事務系統(tǒng)是實時的,這就要求時效性,客戶打一個電話要等十幾秒肯定是無法忍受的,這就要求數據庫只能存儲很短一段時間的數據。而分析系統(tǒng)是事后的,它要提供關注時間段內所有的有效數據。這些數據是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數據就達到目的了。
從上面的例子可以看出,數據庫是為捕獲數據而設計,數據倉庫是為分析數據而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如通話時間(什么時候打的電話),業(yè)務類型(語音通話,短信息,數據通信)維表放的就是這些東西的定義,事實表里放著要查詢的數據。
三、數據倉庫的特點
數據倉庫,是在數據庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它并不是所謂的“大型數據庫”。數據倉庫的方案建設的目的,是為前端查詢和分析作為基礎,由于有較大的冗余,所以需要的存儲也較大。為了更好地為前端應用服務,數據倉庫往往有如下幾點特點:
1. 效率足夠高。數據倉庫的分析數據一般分為日、周、月、季、年等,可以看出,日為周期的數據要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的數據分析。由于有的企業(yè)每日的數據量很大,設計不好的數據倉庫經常會出問題,延遲1-3日才能給出數據,顯然不行的。
2. 數據質量。數據倉庫所提供的各種信息,肯定要準確的數據,但由于數據倉庫流程通常分為多個步驟,包括數據清洗,裝載,查詢,展現(xiàn)等等,復雜的架構會更多層次,那么由于數據源有臟數據或者代碼不嚴謹,都可以導致數據失真,客戶看到錯誤的信息就可能導致分析出錯誤的決策,造成損失,而不是效益。
3. 擴展性。之所以有的大型數據倉庫系統(tǒng)架構設計復雜,是因為考慮到了未來3-5年的擴展性,這樣的話,未來不用太快花錢去重建數據倉庫系統(tǒng),就能很穩(wěn)定運行。主要體現(xiàn)在數據建模的合理性,數據倉庫方案中多出一些中間層,使海量數據流有足夠的緩沖,不至于數據量大很多,就運行不起來了。
從上面的介紹中可以看出,數據倉庫技術可以將企業(yè)多年積累的數據喚醒,不僅為企業(yè)管理好這些海量數據,而且挖掘數據潛在的價值,從而成為通信企業(yè)運營維護系統(tǒng)的亮點之一。正因為如此,
廣義的說,基于數據倉庫的決策支持系統(tǒng)由三個部件組成:數據倉庫技術,聯(lián)機分析處理技術和數據挖掘技術,其中數據倉庫技術是系統(tǒng)的核心,在這個系列后面的文章里,將圍繞數據倉庫技術,介紹現(xiàn)代數據倉庫的主要技術和數據處理的主要步驟,討論在通信運營維護系統(tǒng)中如何使用這些技術為運營維護帶來幫助。
四、通信運維系統(tǒng)中對數據倉庫的使用
現(xiàn)代通信運維系統(tǒng)往往呈現(xiàn)高度集中和網絡化的特點,擁有多個子系統(tǒng)去完成網絡支撐,網絡管理,綜合營帳等多個方面的工作。幾乎每個子系統(tǒng),每時每刻都會產生大量的數據,對這些數據的儲存,管理和維護是通信運營商必須面對和解決的。下面是幾個具體的實際例子來。
1. 電信設備的實時狀態(tài)。從最底層的接入網網站,到傳輸設備,再到核心網絡的電信交換機,每個設備每時每刻都發(fā)生著變化。網絡管理系統(tǒng)需要實時的監(jiān)控這些設備的狀態(tài),進行相應的處理工作。數據倉庫可以提供對監(jiān)控數據的收集,管理和查詢支持。
2. 用戶通信話單。有別于通話處理(使用交易數據庫),用戶話單的存儲,計量乃至后期的數據分析,都將對海量的記錄數據進行處理。
3. 數據業(yè)務。隨著第三代移動通信的發(fā)展和普及,數據業(yè)務在通信業(yè)務中所占的比重也越來越大,甚至有超過語音通信的趨勢。對這一類型的業(yè)務數據,比如用戶訪問某地址的數據流量,需要進行隨時隨地的數據記錄和數據分析。
以上這些實例,都是數據倉庫技術大展拳腳的領域。而數據倉庫技術的引入和發(fā)展,也為通信運營維護系統(tǒng)提供強有力的支撐和實現(xiàn)手段。
(作者簡介:丁軼,IBM中國軟件開發(fā)實驗室高級軟件工程師。長期從事企業(yè)級軟件的設計和開發(fā)工作,包括中間件軟件系統(tǒng)和數據庫系統(tǒng),目前在從事數據倉庫方面的設計和開發(fā)。)
作者:丁軼 來源:中國通信運維網