Data Warehouse Guide文件筆記(一):Data warehouse和OLTP系統的對比

asword發表於2009-02-09
作者: NinGoo(http://ningoo.itpub.net)
發表於: 2006.10.21 13:48
分類: DW&BI
出處: http://ningoo.itpub.net/post/2149/222935
---------------------------------------------------------------[@more@]

Oracle10g Data Warehouse Guide連結如下:

和OLTP系統不同,資料倉儲的主要目的是用於查詢和分析資料。因此,資料倉儲一般會包含大量的歷史資料,用於分析其中的資訊和趨勢。
資料倉儲理論的鼻祖William Inmon給資料倉儲的特性歸納為一下四點:

面向主題(Subject Oriented)
整合(Inegrated)
不可修改(Nonvolatile)
時間相關(Time Variant)


資料倉儲和OLTP是基於不同的需求而得出的解決方案。下面是資料倉儲和OLTP系統的一些主要方面的對比:

一、負載
資料倉儲主要設計為適合即席查詢(Ad hoc query),我們無法預先知道資料倉儲的負荷,所以,資料倉儲需要設計為能夠適應各種可能的查詢

而OLTP系統一般執行的操作是可以預先確定的,可以按照估計出的系統負荷來設計OLTP系統

二、資料修改
資料倉儲一般是透過ETL,週期性的將新的資料批次裝載。資料進入資料倉儲後,一般是不可修改的,所以資料倉儲當中一般會建較多的索引用於最佳化查詢。

而OLTP系統,終端使用者可以修改其對應的某些資料,所有OLTP系統一般即時體現著當前最新的資料

三、架構設計
資料倉儲一般採用非規範化或者部分非規範化的設計,以最佳化查詢效能,典型的設計如星型模型和雪花模型。因為非規範化設計,可以只需要join較少的表就得到更多的資料。

而OLTP系統一般採用規範化的設計,以避免出現update/insert/delete異常,並保證資料的一致性。

四、典型操作
資料倉儲中,一條查詢可能需要訪問上千,甚至幾百萬行資料,所以查詢的效能相當重要。在oracle中,dimension,materialized view,bitmap index等技術,都在資料倉儲中大量使用以最佳化查詢效能。

OLTP中,一個操作一般只需要訪問有限的幾條資料。

五、歷史資料
資料倉儲中需要大量的歷史資料,以便從歷史資料中分析所需要的資訊

OLTP系統則一般會將歷史資料刪除,以保證當前事務處理的效能

(需要引用, 請註明出處: http://ningoo.itpub.net)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82387/viewspace-1017035/,如需轉載,請註明出處,否則將追究法律責任。

相關文章