鄭疆 2008.12.14
資料倉儲是面向主題的、整合的、不可更新的、隨時間的變化而不斷變化的,這些特點決定了資料倉儲的系統設計不能採用同開發傳統的oltp資料庫一樣的設計方法。
資料倉儲系統的原始需求不明確,且不斷變化與增加,最初很難確切了解到使用者的明確而詳細的需求,更不能較準確地預見到以後的需求;同時,資料倉儲系統開發又是乙個經過不斷迴圈、反饋而使系統不斷增長與完善的過程。因此,採用演化過程來進行資料倉儲的開發是比較合適的。
軟體生存週期-演化模型
資料倉儲是在現存資料庫系統基礎上進行開發,它著眼於有效地抽取、綜合、整合和挖掘已有資料庫的資料資源來服務於企業高層領導管理決策分析的需要,歸根結底是一種資料驅動的開發。
由於資料倉儲系統開發是乙個經過不斷迴圈、反饋而使系統不斷增長與完善的過程,因此,在資料倉儲的開發的整個過程中,需要自始至終決策人員和開發者的共同參與和密切協作,保持頭腦靈活、思維開闊,不做或盡量少做無效工作或重複工作。
資料倉儲的設計大體上可以分為以下六個步驟:
1. 概念模型設計
2. 技術準備工作
3. 邏輯模型設計
4. 物理模型設計
5. 資料倉儲生成
6. 資料倉儲執行與維護
下面以六個主要設計步驟為主線,列出在各個設計步驟中設計的基本內容和工作安排計畫。
1. 2.
因為資料倉儲是對原有資料庫系統中的資料進行整合和重組而形成的資料集合,所以資料倉儲的概念模型設計,首先要對原有資料庫系統加以分析理解,看在原有的資料庫系統中「有什麼」、「怎樣組織的」和「如何分布的」等,然後再來考慮應當如何建立資料倉儲系統的概念模型。一方面,通過原有的資料庫的設計文件以及在資料字典中的資料庫關係模式,可以對企業現有的資料庫中的內容有乙個完整而清晰的認識;另一方面,資料倉儲的概念模型是面向企業全域性建立的,它為整合來自各個面向應用的資料庫的資料提供了統一的概念檢視。
概念模型的設計是在較高的抽象層次上的設計,因此建立概念模型時不用考慮具體技術條件的限制。進行概念模型設計所要完成的主要工作是:
1. 2.
2.1.
資料倉儲是面向決策分析的資料庫,我們無法在資料倉儲設計的最初就得到詳細而明確的需求,但是一些基本的方向性的需求還是擺在了我們的面前:
● 要做的決策型別有哪些
● 決策者感興趣的是什麼問題
● 這些問題需要什麼樣的資訊
● 要得到這些資訊需要包含原有資料庫系統的哪些部分的資料
這樣,我們可以劃定乙個當前的大致的系統邊界,集中精力進行最需要的部分的開發。因而,從某種意義上講,界定系統邊界的工作也可以看作是資料倉儲系統設計的需求分析,因為它將決策者的資料分析的需求用系統邊界的定義形式反映出來。
在這一步中,要確定系統所包含的主題域,然後對每個主題域的內容進行較明確的描述,描述的內容包括:
● 主題域的公共碼鍵
● 主題域之間的聯絡
● 充分代表主題的屬性組
管理資料倉儲的技術要求與管理操作型資料庫的技術要求區別很大,兩者所考慮的方面也不同。也正因為此,我們在一般情況下總是將分析型資料與操作型資料分離開來單獨集中存放,也就是用資料倉儲來存放。
進行資料倉儲開發的技術準備工作包括:
2.2.
進行技術評估,就是確定資料倉儲的各項效能指標。一般情況下,需要在這一步裡確定的效能指標包括:
● 管理大資料量資料的能力
● 進行靈活資料訪問的能力
● 根據資料模型重組資料的能力
● 透明的資料傳送和接收能力
● 週期性成批裝載資料的能力
● 可設定完成時間的作業管理能力
一旦資料倉儲的體系化結構的模型大體建好後,下一步的工作就是確定我們應該怎樣來裝配這個體系化結構模型,主要是確定對軟硬體配置的要求;我們主要考慮相關的問題:
● 預期在資料倉儲上分析處理的資料量有多大
● 如何減少或減輕競爭性訪問程式的衝突
● 資料倉儲的資料量有多大
● 進出資料倉儲的資料通訊量有多大
根據這些考慮,我們就可以確定各項軟硬體的配備要求。這些配備可能會涉及:
● 直接訪問裝置(dasd)
● 網路
● 管理直接訪問裝置(dasd)的作業系統
● 進出資料倉儲的介面(主要是資料查詢和分析工具)
● 管理資料倉儲的軟體,目前選用oracle資料庫管理系統及有關的選件
當dbms產品不能滿足管理資料倉儲需要的,還應考慮自己開發有關模組等等。
在這一步裡進行的工作主要有:
2.3.
在概念模型設計中,我們確定了幾個基本的主題域,但是,資料倉儲的設計方法是乙個逐步求精的過程,在進行設計時,一般是一次乙個主題或一次若干個主題地逐步完成的。所以,我們必須對概念模型設計步驟中確定的幾個基本主題域進行分析,並選擇首先要實施的主題域。
選擇第乙個主題域所要考慮的是它要足夠大,以便使得該主題域能建設成為乙個可應用的系統;它還要足夠小,以便於開發和較快地實施。如果所選擇的主題域很大並且很複雜,我們甚至可以針對它的乙個有意義的子集來進行開發。在每一次的反饋過程中,都要進行主題域的分析。
資料倉儲邏輯設計中要解決的乙個重要問題是決定資料倉儲的粒度劃分層次,粒度層次劃分適當與否直接影響到資料倉儲中的資料量和所適合的查詢型別。確定資料倉儲的粒度劃分,可以使用在粒度劃分一節中介紹的方法,通過估算資料行數和所需的dasd數,來確定是採用單一粒度還是多重粒度,以及粒度劃分的層次。
在這一步裡,要選擇適當的資料分割的標準,一般要考慮以下幾方面因素:資料量(而非記錄行數)、資料分析處理的實際情況、簡單易行以及粒度劃分策略等。
資料量的大小是決定是否進行資料分割和如何分割的主要因素;資料分析處理的要求是選擇資料分割標準的乙個主要依據,因為資料分割是跟資料分析處理的物件緊密聯絡的;我們還要考慮到所選擇的資料分割標準應是自然的、易於實施的:同時也要考慮資料分割的標準與粒度劃分層次是適應的。
資料倉儲的每個主題都是由多個表來實現的,這些表之間依靠主題的公共碼鍵聯絡在一起,形成乙個完整的主題。在概念模型設計時,我們就確定了資料倉儲的基本主題,並對每個主題的公共碼鍵、基本內容等做了描述在這一步裡,我們將要對選定的當前實施的主題進行模式劃分,形成多個表,並確定各個表的關係模式。
將相關內容記錄在資料倉儲的元資料中。
確定資料倉儲實現的物理模型,要求必須做到以下幾方面:
● 要全面了解所選用的資料庫管理系統,特別是儲存結構和訪問方法
● 了解資料環境、資料的使用頻度、使用方式、資料規模以及響應時間要求等,這些是對時間和空間效率進行平衡和優化的重要依據
● 了解外部儲存裝置的特性,如分塊原則,塊大小的規定,裝置的i/o特性等
這一步所做的工作是:
2.4.
乙個資料庫管理系統往往都提供多種儲存結構供設計人員選用,不同的儲存結構有不同的實現方式,各有各的適用範圍和優缺點,設計人員在選擇合適的儲存結構時應該權衡三個方面的主要因素:訪問時間、儲存空間利用率和維護代價。
資料倉儲的資料量很大,因而需要對資料的訪問路徑進行仔細的設計和選擇。由於資料倉儲的資料都是不常更新的,因而可以設計多種多樣的索引結構來提高資料訪問效率。
在資料倉儲中,可以考慮對各個資料儲存建立專用的、複雜的索引,以獲得最高的訪問效率,因為在資料倉儲中的資料是不常更新的,也就是說每個資料儲存是穩定的,因而雖然建立專用的、複雜的索引有一定的代價,但一旦建立就幾乎不需維護索引的代價。
同乙個主題的資料並不要求存放在相同的介質上。在物理設計時,我們常常會按照重要程度、使用頻率以及對響應時間的要求對資料進行分類,並將不同類的資料分別儲存在不同的儲存裝置中。重要程度高、經常訪問並對響應時間要求高的資料就存放在高速儲存裝置上,如硬碟;訪問頻率低或對訪問響應時間要求低的資料則可以放在低速儲存裝置上,如磁碟或磁帶。
資料存放位置的確定還要考慮到其它一些方法,如:決定是否進行合併表;是否對一些經常性的應用建立資料序列;對常用的、不常修改的表或屬性是否冗餘儲存。如果採用了這些技術,就要記入元資料。
許多資料庫管理系統提供了一些儲存分配的引數供設計者進行物理優化處理,如:塊的尺寸、緩衝區的大小和個數等等,它們都要在物理設計時確定。這同建立資料庫系統時的考慮是一樣的。
在這一步裡所要做的工作是:
2.5.
將操作型環境下的資料裝載進入資料倉儲環境,需要在兩個不同環境的記錄系統之間建立乙個介面。建立和設計這個介面似乎只要編制乙個抽取程式就可以了,但事實上,在這一階段的工作中,雖然確實對資料進行了抽取,但抽取並不是全部的工作,這一介面還應具有以下的功能:
● 從面向應用和操作的環境生成完整的資料
● 資料的基於時間的轉換
● 資料的凝聚
● 對現有記錄系統的有效掃瞄,以便以後進行追加
當然,考慮這些因素的同時,還要考慮到物理設計的一些因素和技術條件限制,根據這些內容,嚴格地制定規格說明,然後根據規格說明,進行介面程式設計。從操作型環境到資料倉儲環境的資料介面程式設計的過程和一般的程式設計過程並無區別,它也包括偽碼開發、編碼、編譯、檢錯、測試等步驟。
在介面程式設計中,要注意:
● 保持高效性,這也是一般的程式設計所要求的
● 要儲存完整的文件記錄
資料倉儲構建實施方法及步驟
資料倉儲是面向主題的 整合的 不可更新的 隨時間的變化而不斷變化的,這些特點決定了資料倉儲的系統設計不能採用同開發傳統的oltp資料庫一樣的設計方法。資料倉儲系統的原始需求不明確,且不斷變化與增加,開發者最初不能確切了解到使用者的明確而詳細的需求,使用者所能提供的無非是需求的大的方向以及部分需求,更...
倉庫工作計畫
倉庫工作計畫范文篇一 對於乙個好的倉庫我有幾個標準 目視化管理到位 資料準確率高 98 以上 生產 銷售 順暢 無停工待料,來料交貨及時率高 95 以上 出貨準確率高 99 以上 工作效率高 庫存呆滯料少 倉庫利用率高,貨品周轉率高,倉儲成本低。現在我們倉庫要達到我的好倉庫的標準大致分三個階段 一資...
專案實施工作計畫
文件作者 建立日期 確認日期 當前版本 1.0 拷貝數量 1 目錄1 專案概述 1 1.1 軟體模組清單 1 1.2 實施範圍 1 2 系統實施目標 2 3 專案組織 2 4 專案實施總體計畫 3 5 系統驗收方式及標準 4 6 關於專案風險 4 6.1 金蝶的技術方案 4 6.1.1 新會計準則下...