資料庫和資料倉儲的區別

2021-06-02 03:27:37 字數 1365 閱讀 4796

資料庫設計是盡量避免冗餘,一般採用符合正規化的規則來設計,資料倉儲在設計是有意引入冗餘,採用反正規化的方式來設計。

資料庫是為捕獲資料而設計,資料倉儲是為分析資料而設計,它的兩個基本的元素是維表和事實表。(維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的資料,同時有維的id)

資料倉儲,是在資料庫已經大量存在的情況下,為了進一步挖掘資料資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。那麼,資料倉儲與傳統資料庫比較,有哪些不同呢?讓我們先看看w.h.inmon關於資料倉儲的定義:面向主題的、整合的、與時間相關且不可修改的資料集合。

「面向主題的」:傳統資料庫主要是為應用程式進行資料處理,未必按照同一主題儲存資料;資料倉儲側重於資料分析工作,是按照主題儲存的。這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿蔔、香菜會在乙個攤位上,如果它們是乙個小販賣的;而超市裡,白菜、蘿蔔、香菜則各自一塊。也就是說,市場裡的菜(資料)是按照小販(應用程式)歸堆(儲存)的,超市裡面則是按照菜的型別(同主題)歸堆的。

「與時間相關」:資料庫儲存資訊的時候,並不強調一定有時間資訊。資料倉儲則不同,出於決策的需要,資料倉儲中的資料都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。

「不可修改」:資料倉儲中的資料並不是最新的,而是**於其它資料來源。資料倉儲反映的是歷史資訊,並不是很多資料庫處理的那種日常事務資料(有的資料庫例如電信計費資料庫甚至處理實時資訊)。因此,資料倉儲中的資料是極少或根本不修改的;當然,向資料倉儲新增資料是允許的。

資料倉儲的出現,並不是要取代資料庫。目前,大部分資料倉儲還是用關聯式資料庫管理系統來管理的。可以說,資料庫、資料倉儲相輔相成、各有千秋

補充一下,資料倉儲的方案建設的目的,是為前端查詢和分析作為基礎,由於有較大的冗餘,所以需要的儲存也較大。為了更好地為前端應用服務,資料倉儲必須有如下幾點優點,否則是失敗的資料倉儲方案。

1.效率足夠高。客戶要求的分析資料一般分為日、周、月、季、年等,可以看出,日為週期的資料要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的資料分析。由於有的企業每日的資料量很大,設計不好的資料倉儲經常會出問題,延遲1-3日才能給出資料,顯然不行的。

2.資料質量。客戶要看各種資訊,肯定要準確的資料,但由於資料倉儲流程至少分為3步,2次etl,複雜的架構會更多層次,那麼由於資料來源有髒資料或者**不嚴謹,都可以導致資料失真,客戶看到錯誤的資訊就可能導致分析出錯誤的決策,造成損失,而不是效益。

3.擴充套件性。之所以有的大型資料倉儲系統架構設計複雜,是因為考慮到了未來3-5年的擴充套件性,這樣的話,客戶不用太快花錢去重建資料倉儲系統,就能很穩定執行。主要體現在資料建模的合理性,資料倉儲方案中多出一些中間層,使海量資料流有足夠的緩衝,不至於資料量大很多,就執行不起來了.

資料庫和資料倉儲的區別

一 資料倉儲的概念 資料倉儲之父比爾 恩門 bill inmon 在1991年出版的 building the data warehouse 建立資料倉儲 一書中所提出的定義被廣泛接受 資料倉儲 data warehouse 是乙個面向主題的 subject oriented 整合的 integra...

資料庫和資料倉儲的區別

資料庫設計是盡量避免冗餘,一般採用符合正規化的規則來設計,資料倉儲在設計是有意引入冗餘,採用反正規化的方式來設計。資料庫是為捕獲資料而設計,資料倉儲是為分析資料而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的資料,同時有維的...

資料倉儲和資料庫的區別

一 資料倉儲 1.什麼是資料倉儲?資料倉儲 data warehouse 可簡寫為dw或dwh,資料倉儲,是為了企業所有級別的決策制定計畫過程,提供所有型別資料型別的戰略集合。它出於分析性報告和決策支援的目的而建立。為需要業務智慧型的企業 為需要指導業務流程改進 監視時間,成本,質量以及控制等 2....