關於數據倉庫 — ODS概念

        ODS是一個面向主題的、集成的、可變的、當前的細節數據集合,用於支持企業對於即時性的、操作性的、集成的全體信息的需 求。常常被作爲數據倉庫的過渡,也是數據倉庫項目的可選項之一。根據Bill.Inmon的定義,“數據倉庫是面向主題的、集成的、穩定的、隨時間變化的,主要用於決策支持的數據庫系統”ODS是一個面向主題的、集成的、可變的、當前的細節數據集合,用於支持企業對於即時性的、操作性的、集成的全體信息的需 求。常常被作爲數據倉庫的過渡,也是數據倉庫項目的可選項之一。在Kimball的<<數據倉庫生命週期工具集the data="" warehouse="" liftcycle="" toolkit="">>,他是這樣定義的1. 是操作型系統中的集成,用於當前,歷史以及其它細節查詢(業務系統的一部分)2. 爲決策支持提供當前細節數據(數據倉庫的一部分)因此操作數據存儲(ODS) 是用於支持企業日常的全局應用的數據集合,ODS的數據具有面向主題、集成的、可變的和數據是當前的或是接近當前的4個基本特徵。同樣也可以看出ODS是介於DB和DW 之間的一種數據存儲技術,和原來面向應用的分散的DB相比,ODS中的數據組織方式和數據倉庫(DW)一樣也是面向主題的和集成的,所以對進入ODS的數 據也象進入數據倉庫的數據一樣進行集成處理。另外ODS只是存放當前或接近當前的數據,如果需要的話還可以對ODS中的數據進行增、刪和更新等操 作,雖然DW中的數據也是面向主題和集成的,但這些數據一般不進行修改,所以ODS和DW的區別主要體現數據的可變性、當前性、穩定性、彙總度上。由於ODS仍然存儲在普通的關係數據庫中,出於性能、存儲和備份恢復等數據庫的角度以及對源數據庫的性能影響角度,個人不建議ODS保存相當長週期的數據,同樣ODS中的數據也儘量不做轉換,而是原封不動地與業務數據庫保持一致。即ODS只是業務數據庫的一個備份或者映像,目的是爲了使數據倉庫的處理和決策支持要求與OLTP系統相隔離,減少決策支持要求對OLTP系統的影響。爲什麼需要有一個ODS系統呢?一般在帶有ODS的系統體系結構中,ODS都具備如下幾個作用:1) 在業務系統和數據倉庫之間形成一個隔離層。一 般的數據倉庫應用系統都具有非常複雜的數據來源,這些數據存放在不同的地理位置、不同的數據庫、不同的應用之中,從這些業務系統對數據進行抽取並不是一件 容易的事。因此,ODS用於存放從業務系統直接抽取出來的數據,這些數據從數據結構、數據之間的邏輯關係上都與業務系統基本保持一致,因此在抽取過程中極 大降低了數據轉化的複雜性,而主要關注數據抽取的接口、數據量大小、抽取方式等方面的問題。2) 轉移一部分業務系統細節查詢的功能在 數據倉庫建立之前,大量的報表、分析是由業務系統直接支持的,在一些比較複雜的報表生成過程中,對業務系統的運行產生相當大的壓力。ODS的數據從粒度、 組織方式等各個方面都保持了與業務系統的一致,那麼原來由業務系統產生的報表、細節數據的查詢自然能夠從ODS中進行,從而降低業務系統的查詢壓力。3) 完成數據倉庫中不能完成的一些功能。一 般來說,帶有ODS的數據倉庫體系結構中,DW層所存儲的數據都是進行彙總過的數據和運營指標,並不存儲每筆交易產生的細節數據,但是在某些特殊的應用中,可能需要 對交易細節數據進行查詢,這時就需要把細節數據查詢的功能轉移到ODS來完成,而且ODS的數據模型按照面向主題的方式進行存儲,可以方便地支持多維分析 等查詢功能。即數據倉庫從宏觀角度滿足企業的決策支持要求,而ODS層則從微觀角度反映細節交易數據或者低粒度的數據查詢要求。在一個沒有ODS層的數據倉庫應用系統體系結構中,數據倉庫中存儲的數據粒度是根據需要而確定的,但一般來說,最爲細節的業務數據也是需要保留的,實際上 也就相當於ODS,但與ODS所不同的是,這時的細節數據不是“當前、不斷變化的”數據,而是“歷史的,不再變化的”數據。這樣的數據倉庫的存儲壓力和性能壓力都是比較大的,因此對數據倉庫的物理設計和邏輯設計提出了更高的要求。
發佈了8 篇原創文章 · 獲贊 5 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章