資料庫與資料倉儲的區別

2021-07-29 17:50:25 字數 823 閱讀 1654

資料庫:傳統的關係型資料庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。

資料倉儲:資料倉儲系統的主要應用主要是olap(on-line analytical processing),支援複雜的分析操作,側重決策支援,並且提供直觀易懂的查詢結果。

我嘗試著再補充些具體的事例來說明,這樣更可以幫助大家更好理解一些。

舉個最常見的例子,拿電商行業來說好了。

基本每家電商公司都會經歷,從只需要業務資料庫到要資料倉儲的階段。

這類非常具體,且能夠對公司決策起到關鍵性作用的問題,基本很難從業務資料庫從調取出來。原因在於:

業務資料庫中的資料結構是為了完成交易而設計的,不是為了而查詢和分析的便利設計的。

業務資料庫大多是讀寫優化的,即又要讀(檢視商品資訊),也要寫(產生訂單,完成支付)。因此對於大量資料的讀(查詢指標,一般是複雜的唯讀型別查詢)是支援不足的。

而怎麼解決這個問題,此時我們就需要建立乙個資料倉儲了,公司也算開始進入資訊化階段了。資料倉儲的作用在於:

資料結構為了分析和查詢的便利;

唯讀優化的資料庫,即不需要它寫入速度多麼快,只要做大量資料的複雜查詢的速度足夠快就行了。

那麼在這裡前一種業務資料庫(讀寫都優化)的是業務性資料庫,後一種是分析性資料庫,即資料倉儲。

最後總結一下:

資料庫 比較流行的有:mysql, oracle, sqlserver等

資料倉儲 比較流行的有:aws redshift, greenplum, hive等

這樣把資料從業務性的資料庫中提取、加工、匯入分析性的資料庫就是傳統的 etl 工作。現在也有一些新的方法,這展開說又是另一件事情了,有機會再詳細說說。

資料庫與資料倉儲的區別

簡而言之,資料庫是面向事務的設計,資料倉儲是面向主題設計的。資料庫設計是盡量避免冗餘,一般採用符合正規化的規則來設計,資料倉儲在設計是有意引入冗餘,採用反正規化的方式來設計。資料庫是為捕獲資料而設計,資料倉儲是為分析資料而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表...

資料庫與資料倉儲的區別

資料庫 傳統的關係型資料庫的主要應用,主要是基本的 日常的事務處理,例如銀行交易。資料倉儲 資料倉儲系統的主要應用主要是olap on line analytical processing 支援複雜的分析操作,側重決策支援,並且提供直觀易懂的查詢結果。我嘗試著再補充些具體的事例來說明,這樣更可以幫助...

資料倉儲與資料庫的區別

資料庫是產品,資料倉儲是在資料庫已經大量存在的前提下,為進一步挖掘資料資源,提供決策解決方案而產生的 資料庫是面向事務的設計,資料倉儲是面向主題設計的。資料庫是為應用程式進行資料處理,資料倉儲是進行資料分析工作的,若農貿市場小販 應用程式 的攤位各種菜 資料 都有,即相當於資料庫,超市的菜都是都是白...