數據倉庫
特點
數據倉庫的核心工具1、面向主題 操作型數據庫的數據組織面向事務處理任務,各個業務系統之間各自分離,而數據倉庫中的數據是按照一定的主題域進行組織的。
2、集成的 數據倉庫中的數據是在對原有分散的數據庫數據抽取、清理的基礎上經過系統加工、匯總和整理得到的,必須消除源數據中的不一致性,以保證數據倉庫內的信息是關於整個企業的一致的全局信息。
3、相對穩定的 數據倉庫的數據主要供企業決策分析之用,所涉及的數據操作主要是數據查詢,一旦某個數據進入數據倉庫以後,一般情況下將被長期保留,也就是數據倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的加載、刷新。
4、反映歷史變化 數據倉庫中的數據通常包含歷史信息,系統記錄了企業從過去某一時點(如開始應用數據倉庫的時點)到目前的各個階段的信息,通過這些信息,可以對企業的發展歷程和未來趨勢做出定量分析和預測。
組成
圖IBM數據倉庫解決方案產品組成1、數據倉庫數據庫 數據倉庫的數據庫是整個數據倉庫環境的核心,是數據存放的地方和提供對數據檢索的支持。相對於操縱型數據庫來說其突出的特點是對海量數據的支持和快速的檢索技術。
2、數據抽取工具 數據抽取工具把數據從各種各樣的存儲方式中拿出來,進行必要的轉化、整理,再存放到數據倉庫內。對各種不同數據存儲方式的訪問能力是數據抽取工具的關鍵,應能生成COBOL程序、MVS作業控制語言(JCL)、UNIX腳本、和SQL語句等,以訪問不同的數據。數據轉換都包括,刪除對決策應用沒有意義的數據段;轉換到統一的數據名稱和定義;計算統計和衍生數據;給缺值數據賦給缺省值;把不同的數據定義方式統一。
3、元數據 元數據是描述數據倉庫內數據的結構和建立方法的數據。可將其按用途的不同分為兩類,技術元數據和商業元數據。
技術元數據是數據倉庫的設計和管理人員用於開發和日常管理數據倉庫是用的數據。包括:數據源信息;數據轉換的描述;數據倉庫內對象和數據結構的定義;數據清理和數據更新時用的規則;源數據到目的數據的映射;用戶訪問權限,數據備份歷史記錄,數據導入歷史記錄,信息發布歷史記錄等。
商業元數據從商業業務的角度描述了數據倉庫中的數據。包括:業務主題的描述,包含的數據、查詢、報表;
元數據為訪問數據倉庫提供了一個信息目錄,這個目錄全面描述了數據倉庫中都有什麼數據、這些數據怎麼得到的、和怎麼訪問這些數據。是數據倉庫運行和維護的中心,數據倉庫服務器利用他來存貯和更新數據,用戶通過他來了解和訪問數據。
4、訪問工具 為用戶訪問數據倉庫提供手段。有數據查詢和報表工具;應用開發工具;經理信息系統(EIS)工具;聯機分析處理(OLAP)工具;數據挖掘工具。
5、數據集市(Data Marts) 為了特定的應用目的或應用範圍,而從數據倉庫中獨立出來的一部分數據,也可稱為部門數據或主題數據(subjectarea)。在數據倉庫的實施過程中往往可以從一個部門的數據集市着手,以後再用幾個數據集市組成一個完整的數據倉庫。需要注意的就是再實施不同的數據集市時,同一含義的字段定義一定要相容,這樣再以後實施數據倉庫時才不會造成大麻煩。
數據倉庫管理:安全和特權管理;跟蹤數據的更新;數據質量檢查;管理和更新元數據;審計和報告數據倉庫的使用和狀態;刪除數據;複製、分割和分發數據;備份和恢復;存儲管理。
信息發布系統:把數據倉庫中的數據或其他相關的數據發送給不同的地點或用戶。基於Web的信息發布系統是對付多用戶訪問的最有效方法。
步驟
濟南地稅數據倉庫系統1、數據倉庫的設計步驟
1)選擇合適的主題(所要解決問題的領域)。
2)明確定義fact表。
3)確定和確認維。
4)計算並存儲fact表中的衍生數據段。
5)確定查詢優先級和查詢模式。
2、數據倉庫的建立步驟
1)收集和分析業務需求。
2)建立數據模型和數據倉庫的物理設計。
3)定義數據源。
4)選擇數據倉庫技術和平台。
5)從操作型數據庫中抽取、淨化、和轉換數據到數據倉庫。
6)選擇訪問和報表工具。
7)選擇數據庫連接軟件。
8)選擇數據分析和數據展示軟件。
9)更新數據倉庫 。
測試方法
數據倉庫價值曲線 在數據倉庫環境下進行測試時如何處理需求與質量的關係。雖然數據倉庫的測試是一個驚奇而神秘的過程,但實際上它與其它測試項目並無多大區別。基本的系統分析和測試過程在這裡仍然有效。我們來看一下其中的幾個步驟,並研究如何在數據倉庫環境中應用。
分析源文件與其它項目一樣,測試數據倉庫部署時,通常都會有一份相關的說明文件。雖然這些文件對於創建基本的測試策略非常有用,但經常會缺少一些關於測試開發與執行的詳細資料。有時會有一些其它文件解釋技術上的細節問題,即從源到目標的轉化(source-to-target mappings)說明文件。這些文件詳細說明了數據的來源、如何對數據進行操作,以及存儲到哪裡。如果能拿到這些文件,關於系統設計的文件在設計測試策略時也會變得更加有用。
開發策略和測試計劃分析了各種各樣的源文件後,就要開始創建測試策略。我發現從生命周期和質量的角度來看,增量測試是測試數據倉庫的最好辦法。這從本質上意味着開發團隊會從開發過程的早期開始,將各種小組件交付給測試團隊。這個辦法的主要優點是避免交付讓人吃驚的「大塊」組件,可以從早期開始檢驗缺陷,並使調試變得簡單。此外,這個方法還有助於在開發與測試周期中建立詳細的過程。具體到數據倉庫測試,即是對數據獲取分段表,然後是增量表、基本的歷史表格、BI視圖等的測試。
另一個制定數據倉庫測試策略的主要問題是基於分析(analysis-based)的測試方式和基於查詢(analysis-based)的測試方式的選擇。純基於分析的方法是讓測試分析師通過分析目標數據和相關標準計算出預期結果。基於查詢的方法有相同的基本分析步驟,但更進一步,用SQL查詢語言編寫預期結果。這為將來建立回歸測試過程節省了很大精力。如果測試是一次性的,那麼用基於分析的方式就足夠了,因為通常這種方式較快一些。反之,如果企業對回歸測試有持續的需求,那麼基於查詢的方式會更為合適。
測試的開發與執行不管在測試執行過程之前還是之後進行測試的開發,要根據上行需求的穩定性和分析過程決定。如果情況變動比較頻繁,那麼早期進行的測試開發可能大部分都會被廢棄。這種場合,實時進行的整合的測試開發和執行過程通常會更有效果。不管怎樣,在設計測試開發和執行過程的框架時,參考一下測試分類總是有用的。比如,一些數據倉庫的測試分類可能有:
記錄計數(預期與實際對比) 副本記錄 參考數據有效性 參照完整性 錯誤與異常邏輯 增量過程與歷史過程 控制欄值與默認值除這些分類外,還可以參考缺陷分類學,比如Larry Greenfield的分類。測試執行時,準確的狀態報告過程是經常被忽略的一個方面。在確定團隊裡的其他人明白你的方法的前提下,測試分類和測試進度可以保證他們對測試狀態也有一個清楚的概念。有了詳細的規劃並堅持到底,以及良好的溝通,就能建立一個數據倉庫測試過程,幫助項目團隊取得滿意的成果。
和數據集市
數據倉庫基本體系結構有關決策支持型數據庫的數據集市是面向企業中的某個部門或是項目小組的。一些專家顧問將數據集市的建造描述為建立數據倉庫全過程中的一步。首先,一個儲存企業全部信息的數據倉庫被創建,其中,數據均具備有組織的、一致的、不變的格式。數據集市隨後被創立,其目的是為不同部門提供他們所需要的那部分信息。數據倉庫聚集了所有詳細的信息,而數據集市中的數據則是針對用戶們的特定需求總結而出的。
而另外一些專家則認為數據集市的建立並不需要首先建立一個數據倉庫。在這個模型中,數據直接由事務型數據庫轉入數據集市中。一個公司可能建立有多個數據集市,而彼此之間毫無聯繫。
這種不在建立數據倉庫的基礎上創建數據集市的方式會更便宜、更快速,因為它的規模更加易於管理。
第二種觀點的缺陷在於無法實現最初創建數據倉庫的最主要的目的——將企業所有的數據統一為一致的格式。現有的事務處理系統的數據往往是不一致、冗餘的。如果首先建立起一個全公司範圍的數據倉庫,組織就能夠獲得一個統一關於企業的活動和客戶的知識庫。如果先建立起一個個獨立的數據集市,那麼數據倉庫的諸多優勢都能夠得以實現,但是企業遠遠無法做到對數據的一致的儲存。
參考資料
[1] IT專家網 http://database.ctocio.com.cn/analysis/272/8185772.shtml[2] 億恩科技 http://tech.ddvip.com/2009-01/1231214300104740.html[3] 遠播網 http://hr.114study.com/datum_list11569_11764