商業(yè)智能(Business Intelligence,BI)是IT領域的一個熱點話題。日益激烈的市場競爭讓越來越多的企業(yè)負責人傾向于借助商業(yè)智能來輔助決策,而企業(yè)經(jīng)過多年來信息化的建設積累下豐富的數(shù)據(jù)也為商業(yè)智能項目的進行奠定了堅實的基礎,在這樣的背景下,企業(yè)上馬商業(yè)智能項目的熱情逐漸高漲起來。然而,和眾多企業(yè)管理軟件項目一樣,商業(yè)智能項目的失敗率也居高不下,其中數(shù)據(jù)質(zhì)量問題是諸多失敗誘因中的一個,特別是在涉及多數(shù)據(jù)源的商業(yè)智能項目中,數(shù)據(jù)質(zhì)量不高在很大程度上制約了BI項目的最終效果,甚至直接導致了BI項目失敗。
數(shù)據(jù)質(zhì)量欠佳的原因
導致數(shù)據(jù)庫中數(shù)據(jù)質(zhì)量欠佳的原因很多,其中有人為因素,也有系統(tǒng)的原因,還有外界不可抗拒的原因,比如,某個區(qū)域改變了郵件編碼或者電話號碼等,使得系統(tǒng)原有與此相關的數(shù)據(jù)變成了錯誤的數(shù)據(jù)。
輸入錯誤是最常見的影響數(shù)據(jù)質(zhì)量的行為。比如,原本應為8位的電話號碼只有7位、2月份出現(xiàn)了31日、數(shù)字和字母出現(xiàn)了混淆(把“I”當成了“1”) 等。一般而言,如果應用程序設計得好一些、糾錯能力強的話,上述錯誤在數(shù)據(jù)錄入時是可以避免的。而有些錯誤如果不用專門的工具而單靠應用程序是不現(xiàn)實的,比如錯誤的名稱、地址信息等。另外,在系統(tǒng)維護和數(shù)據(jù)處理時也可能出現(xiàn)錯誤。而錯誤數(shù)據(jù)的輸入可能擴散到多個系統(tǒng)中,從而影響到整個企業(yè)數(shù)據(jù)的質(zhì)量,有時即使是相對簡單的數(shù)據(jù)錯誤也會迅速升級為復雜問題,降低整個企業(yè)內(nèi)數(shù)據(jù)的質(zhì)量。事實上,每個數(shù)據(jù)維護操作都可能改變數(shù)據(jù),從而導致無法預知的結(jié)果。
錯誤的數(shù)據(jù)還可能來自第三方?,F(xiàn)代企業(yè)與產(chǎn)業(yè)鏈上下游的關系越來越密切,不少數(shù)據(jù)就來自上下游企業(yè)。此外,有些企業(yè)將業(yè)務流程外包給第三方或者與合作伙伴以及供應商協(xié)作,在這些場合,企業(yè)對外來的數(shù)據(jù)無法即時控制,這些來源或質(zhì)量無法確定的外部數(shù)據(jù)都可能進入企業(yè)中并在企業(yè)中擴散。
值得注意的是,有些數(shù)據(jù)原本不是錯誤,放到特定場景就有問題。比如,同一信息不同系統(tǒng)格式可能不同,數(shù)據(jù)集成時要把以不同格式保存的數(shù)據(jù)合并起來就可能出現(xiàn)問題。這也就是企業(yè)建立統(tǒng)一的數(shù)據(jù)字典或者上線主數(shù)據(jù)管理系統(tǒng)的原因之一。另外,同一數(shù)據(jù)可能會保持在多個系統(tǒng),如果在一個系統(tǒng)中有過修改,也有可能引發(fā)數(shù)據(jù)一致性問題。
為了衡量數(shù)據(jù)質(zhì)量,可以從以下幾個維度來考察,即完全性、符合性、一致性、準確性、重復性等。完全性指數(shù)據(jù)項沒有缺失,比如個人信息要求必須有身份證號、郵件地址;符合性指各個數(shù)據(jù)項符合基本常識,例如郵政編號必須為數(shù)字、電話號碼應沒有字母且長度符合規(guī)定;一致性指在不同系統(tǒng)中表達同一信息的代碼是一致的,一致性是涉及多數(shù)據(jù)源的數(shù)據(jù)集成時常出現(xiàn)的問題;重復性指的是同樣或者相似數(shù)據(jù)出現(xiàn)多次。
如何保證數(shù)據(jù)質(zhì)量
要改善數(shù)據(jù)質(zhì)量可以從兩個方面著手,一個是在數(shù)據(jù)進入系統(tǒng)時引入各種規(guī)則來保證數(shù)據(jù)的正確性,另一個是在數(shù)據(jù)集成時引入專門的工具進行數(shù)據(jù)清洗。相對而言,前一個方法更主動,成本也較低,而后一種方法是事后處理,成本高,而且以后還需要持續(xù)不斷進行。不過,等到要上BI項目時,改善數(shù)據(jù)質(zhì)量常常只能是依賴后者。
改善數(shù)據(jù)質(zhì)量最直接的辦法就是選用數(shù)據(jù)質(zhì)量相關的工具。目前,數(shù)據(jù)質(zhì)量已經(jīng)成為一個專門的應用領域,市場上也有很多工具,比如,大多數(shù)BI廠商都有自己的數(shù)據(jù)質(zhì)量工具,其ETL工具也帶有這部分功能。因為在數(shù)據(jù)倉庫的建設過程中,數(shù)據(jù)清洗是其中必不可少的一步。
數(shù)據(jù)質(zhì)量保證通常涉及以下過程:首先使用數(shù)據(jù)剖析工具對數(shù)據(jù)質(zhì)量進行分析和探查,以深入了解數(shù)據(jù)的結(jié)構(gòu)、數(shù)值的有效性、分布情況以及在多個分散系統(tǒng)之間關聯(lián)等重要信息,然后對數(shù)據(jù)進行清洗、修正、刪除重復數(shù)據(jù),并實現(xiàn)數(shù)據(jù)的標準化,最后對這些數(shù)據(jù)進行歸并存入數(shù)據(jù)倉庫。
應該說,數(shù)據(jù)質(zhì)量工具并不是解決問題的根本辦法,因為如果管理和流程跟不上的話,單靠數(shù)據(jù)質(zhì)量工具是很難達到滿意的效果的。實際上,在數(shù)據(jù)質(zhì)量保證項目中,有一件非常重要的工作是建立數(shù)據(jù)的標準和規(guī)范、明確數(shù)據(jù)的定義。因為大多數(shù)企業(yè)沒有建立主數(shù)據(jù)管理系統(tǒng),而應用程序開發(fā)的時間不同,很可能出現(xiàn)同一數(shù)據(jù)采用不同格式進行表達的情況,而在對多數(shù)據(jù)源進行數(shù)據(jù)集成時,必須對這些數(shù)據(jù)格式進行轉(zhuǎn)換,如果有了相關標準和定義,就可以大大降低數(shù)據(jù)集成時的工作量和復雜度。此外,還要建立一個可重復的數(shù)據(jù)收集、數(shù)據(jù)修改和數(shù)據(jù)維護流程,而最終的理想結(jié)果是達到流程的自動化,從而降低數(shù)據(jù)質(zhì)量保證計劃的總體開銷。
值得強調(diào)的是,由于數(shù)據(jù)的生成和處理是一個持續(xù)不斷進行的過程,因此,數(shù)據(jù)質(zhì)量保證是一個長期的過程,相應的,確保數(shù)據(jù)質(zhì)量并不是一次就能完成的。
提出文字:改善數(shù)據(jù)質(zhì)量需要從數(shù)據(jù)質(zhì)量工具、建立管理制度和流程兩個方面著手,并通過持續(xù)不斷的改進來確保數(shù)據(jù)質(zhì)量的高度可靠。