數據倉庫與傳統資料庫的區別
A. 傳統資料庫和數據倉庫的區別
簡而言之,資料庫是面向事務的設計,數據倉庫是面向主題設計的。
資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
資料庫設計是盡量避免冗餘,一般採用符合範式的規則來設計,數據倉庫在設計是有意引入冗餘,採用反範式的方式來設計。
資料庫是為捕獲數據而設計,數據倉庫是為分析數據而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的數據,同時有維的ID。
單從概念上講,有些晦澀。任何技術都是為應用服務的,結合應用可以很容易地理解。以銀行業務為例。資料庫是事務系統的數據平台,客戶在銀行做的每筆交易都會寫入資料庫,被記錄下來,這里,可以簡單地理解為用資料庫記帳。數據倉庫是分析系統的數據平台,它從事務系統獲取數據,並做匯總、加工,為決策者提供決策的依據。比如,某銀行某分行一個月發生多少交易,該分行當前存款余額是多少。如果存款又多,消費交易又多,那麼該地區就有必要設立ATM了。
顯然,銀行的交易量是巨大的,通常以百萬甚至千萬次來計算。事務系統是實時的,這就要求時效性,客戶存一筆錢需要幾十秒是無法忍受的,這就要求資料庫只能存儲很短一段時間的數據。而分析系統是事後的,它要提供關注時間段內所有的有效數據。這些數據是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數據就達到目的了。
數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。那麼,數據倉庫與傳統資料庫比較,有哪些不同呢?讓我們先看看W.H.Inmon關於數據倉庫的定義:面向主題的、集成的、與時間相關且不可修改的數據集合。
「面向主題的」:傳統資料庫主要是為應用程序進行數據處理,未必按照同一主題存儲數據;數據倉庫側重於數據分析工作,是按照主題存儲的。這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市裡,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數據)是按照小販(應用程序)歸堆(存儲)的,超市裡面則是按照菜的類型(同主題)歸堆的。
「與時間相關」:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
「不可修改」:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。
補充一下,數據倉庫的方案建設的目的,是為前端查詢和分析作為基礎,由於有較大的冗餘,所以需要的存儲也較大。為了更好地為前端應用服務,數據倉庫必須有如下幾點優點,否則是失敗的數據倉庫方案。
1.效率足夠高。客戶要求的分析數據一般分為日、周、月、季、年等,可以看出,日為周期的數據要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的數據分析。由於有的企業每日的數據量很大,設計不好的數據倉庫經常會出問題,延遲1-3日才能給出數據,顯然不行的。
2.數據質量。客戶要看各種信息,肯定要准確的數據,但由於數據倉庫流程至少分為3步,2次ETL,復雜的架構會更多層次,那麼由於數據源有臟數據或者代碼不嚴謹,都可以導致數據失真,客戶看到錯誤的信息就可能導致分析出錯誤的決策,造成損失,而不是效益。
3.擴展性。之所以有的大型數據倉庫系統架構設計復雜,是因為考慮到了未來3-5年的擴展性,這樣的話,客戶不用太快花錢去重建數據倉庫系統,就能很穩定運行。主要體現在數據建模的合理性,數據倉庫方案中多出一些中間層,使海量數據流有足夠的緩沖,不至於數據量大很多,就運行不起來了。
B. 資料庫與數據倉庫的本質差別是什麼
資料庫與數據倉庫的本質差別如下:
1、邏輯層面/概念層面:資料庫和數據倉庫其實是一樣的或者及其相似的,都是通過某個資料庫軟體,基於某種數據模型來組織、管理數據。但是,資料庫通常更關注業務交易處理(OLTP),而數據倉庫更關注數據分析層面(OLAP),由此產生的資料庫模型上也會有很大的差異。
2、資料庫通常追求交易的速度,交易完整性,數據的一致性等,在資料庫模型上主要遵從範式模型(1NF,2NF,3NF等),從而盡可能減少數據冗餘,保證引用完整性;而數據倉庫強調數據分析的效率,復雜查詢的速度,數據之間的相關性分析,所以在資料庫模型上,數據倉庫喜歡使用多維模型,從而提高數據分析的效率。
3、產品實現層面:資料庫和數據倉庫軟體是有些不同的,資料庫通常使用行式存儲,如SAP ASE,Oracle, Microsoft SQL Server,而數據倉庫傾向使用列式存儲,如SAP IQ,SAP HANA。
C. 數據倉庫和資料庫有什麼區別和聯系
簡而言之,資料庫是面向事務的設計,數據倉庫是面向主題設計的。
資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
資料庫設計是盡量避免冗餘,一般採用符合範式的規則來設計,數據倉庫在設計是有意引入冗餘,採用反範式的方式來設計。
資料庫是為捕獲數據而設計,數據倉庫是為分析數據而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的數據,同時有維的ID。
單從概念上講,有些晦澀。任何技術都是為應用服務的,結合應用可以很容易地理解。以銀行業務為例。資料庫是事務系統的數據平台,客戶在銀行做的每筆交易都會寫入資料庫,被記錄下來,這里,可以簡單地理解為用資料庫記帳。數據倉庫是分析系統的數據平台,它從事務系統獲取數據,並做匯總、加工,為決策者提供決策的依據。比如,某銀行某分行一個月發生多少交易,該分行當前存款余額是多少。如果存款又多,消費交易又多,那麼該地區就有必要設立ATM了。
顯然,銀行的交易量是巨大的,通常以百萬甚至千萬次來計算。事務系統是實時的,這就要求時效性,客戶存一筆錢需要幾十秒是無法忍受的,這就要求資料庫只能存儲很短一段時間的數據。而分析系統是事後的,它要提供關注時間段內所有的有效數據。這些數據是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數據就達到目的了。
數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。那麼,數據倉庫與傳統資料庫比較,有哪些不同呢?讓我們先看看W.H.Inmon關於數據倉庫的定義:面向主題的、集成的、與時間相關且不可修改的數據集合。
「面向主題的」:傳統資料庫主要是為應用程序進行數據處理,未必按照同一主題存儲數據;數據倉庫側重於數據分析工作,是按照主題存儲的。這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市裡,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數據)是按照小販(應用程序)歸堆(存儲)的,超市裡面則是按照菜的類型(同主題)歸堆的。
「與時間相關」:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
「不可修改」:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。
補充一下,數據倉庫的方案建設的目的,是為前端查詢和分析作為基礎,由於有較大的冗餘,所以需要的存儲也較大。為了更好地為前端應用服務,數據倉庫必須有如下幾點優點,否則是失敗的數據倉庫方案。
1.效率足夠高。客戶要求的分析數據一般分為日、周、月、季、年等,可以看出,日為周期的數據要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的數據分析。由於有的企業每日的數據量很大,設計不好的數據倉庫經常會出問題,延遲1-3日才能給出數據,顯然不行的。
2.數據質量。客戶要看各種信息,肯定要准確的數據,但由於數據倉庫流程至少分為3步,2次ETL,復雜的架構會更多層次,那麼由於數據源有臟數據或者代碼不嚴謹,都可以導致數據失真,客戶看到錯誤的信息就可能導致分析出錯誤的決策,造成損失,而不是效益。
3.擴展性。之所以有的大型數據倉庫系統架構設計復雜,是因為考慮到了未來3-5年的擴展性,這樣的話,客戶不用太快花錢去重建數據倉庫系統,就能很穩定運行。主要體現在數據建模的合理性,數據倉庫方案中多出一些中間層,使海量數據流有足夠的緩沖,不至於數據量大很多,就運行不起來了。
D. 資料庫與數據倉庫的區別
資料庫是面向事務的設計,數據倉庫是面向主題設計的。資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
「與時間相關」:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
「不可修改」:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
拓展資料:
數據倉庫的出現,並不是要取代資料庫。數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。
目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋。
E. 資料庫和數據倉庫的區別是什麼
大家都知道,我們在進行數據分析工作的時候會用到資料庫這一工具,可能大家還聽說過數據倉庫這個工具,資料庫和數據倉庫很容易被大家混淆。很多人認為資料庫和數據倉庫是一類事物,其實並不只是這樣的,那麼大家知不知道資料庫和數據倉庫的區別是什麼呢?下面我們就為大家介紹一下資料庫和數據倉庫的相關知識。
一般來說,傳統資料庫是為存儲而生,而數據倉庫很明顯,是為分析而生。實現目的的不同一開始就註定它們的差異。傳統資料庫包括增刪改查,但數據倉庫注重查詢。而傳統資料庫的主要任務是執行聯機事務處理。主要負責日常操作。而數據倉庫系統在數據分析和決策方面為用戶或「知識工人」提供服務,可以以不同的格式組織和提供數據,以便應付不同的需求,這種系統稱作聯機分析處理。這就是資料庫和數據倉庫的相關知識。
那麼數據倉庫和資料庫的區別是什麼呢?首先需要我們考慮用戶和系統的面向對象,資料庫是面向顧客的,用戶操作員,客戶和信息技術人員的事務和查詢處理。數據倉庫是面向市場的,用於知識工人的數據分析。從中我們可以發現資料庫和數據倉庫的面向對象是不一樣的。
當然,在數據內容中兩者也是有很大的區別的,一般來說資料庫管理當前數據。但是一般這種數據比較瑣碎,很難用於決策。數據倉庫系統管理大量歷史數據,提供匯總和聚集機制,而且在不同的粒度層上存儲和管理信息。
在資料庫設計設計中,資料庫和數據倉庫也是有區別的,資料庫系統採用實體聯系數據模型和面向應用的資料庫設計。而數據倉庫系統採用星形或雪花模型和面向主題的資料庫設計。
而在視圖中,二者也是有所區別的,資料庫關注一個企業或部門內部的當前數據,不涉及歷史數據或不同單位的數據。數據倉庫經常需要跨域資料庫模式的不同版本。
在訪問模式中,資料庫和數據倉庫也是有所區別的,資料庫系統主要由短的原子事務組成,一般需要並發控制和恢復機制。而數據倉庫系統的訪問大部分是只讀操作。
在這篇文章中我們給大家介紹了關於資料庫和數據倉庫之間的區別的相關知識,通過對這些知識的了解我們可以更好地區分資料庫和數據倉庫,也希望大家在學習過程中能夠融會貫通,得心應手。
F. 數據倉庫與傳統資料庫的區別
BI領域注重統計分析,傳統的資料庫注重在線事務。。 統計分析的數據量一般都比版較大,注重的權是查詢,一次查詢大批量的數據,但是傳統的資料庫一般都是為了支持在線事務的,所以插入更新較多,查詢往往只根據條件查詢。。
G. 數據倉庫和傳統資料庫的區別和聯系是什麼
資料庫是面向事務的設計,數據倉庫是面向主題設計的。資料庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據。
資料庫設計是盡量避免冗餘,一般採用符合範式的規則來設計,數據倉庫在設計是有意引入冗餘,採用反範式的方式來設計。
資料庫是為捕獲數據而設計,數據倉庫是為分析數據而設計,它的兩個基本的元素是維表和事實表。(維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表裡放著要查詢的數據,同時有維的ID)
數據倉庫,是在資料庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的「大型資料庫」。那麼,數據倉庫與傳統資料庫比較,有哪些不同呢?讓我們先看看W.H.Inmon關於數據倉庫的定義:面向主題的、集成的、與時間相關且不可修改的數據集合。
「面向主題的」:傳統資料庫主要是為應用程序進行數據處理,未必按照同一主題存儲數據;數據倉庫側重於數據分析工作,是按照主題存儲的。這一點,類似於傳統農貿市場與超市的區別—市場裡面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市裡,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數據)是按照小販(應用程序)歸堆(存儲)的,超市裡面則是按照菜的類型(同主題)歸堆的。
「與時間相關」:資料庫保存信息的時候,並不強調一定有時間信息。數據倉庫則不同,出於決策的需要,數據倉庫中的數據都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對於決策者意義是不同的。
「不可修改」:數據倉庫中的數據並不是最新的,而是來源於其它數據源。數據倉庫反映的是歷史信息,並不是很多資料庫處理的那種日常事務數據(有的資料庫例如電信計費資料庫甚至處理實時信息)。因此,數據倉庫中的數據是極少或根本不修改的;當然,向數據倉庫添加數據是允許的。
數據倉庫的出現,並不是要取代資料庫。目前,大部分數據倉庫還是用關系資料庫管理系統來管理的。可以說,資料庫、數據倉庫相輔相成、各有千秋
補充一下,數據倉庫的方案建設的目的,是為前端查詢和分析作為基礎,由於有較大的冗餘,所以需要的存儲也較大。為了更好地為前端應用服務,數據倉庫必須有如下幾點優點,否則是失敗的數據倉庫方案。
1.效率足夠高。客戶要求的分析數據一般分為日、周、月、季、年等,可以看出,日為周期的數據要求的效率最高,要求24小時甚至12小時內,客戶能看到昨天的數據分析。由於有的企業每日的數據量很大,設計不好的數據倉庫經常會出問題,延遲1-3日才能給出數據,顯然不行的。
2.數據質量。客戶要看各種信息,肯定要准確的數據,但由於數據倉庫流程至少分為3步,2次ETL,復雜的架構會更多層次,那麼由於數據源有臟數據或者代碼不嚴謹,都可以導致數據失真,客戶看到錯誤的信息就可能導致分析出錯誤的決策,造成損失,而不是效益。
3.擴展性。之所以有的大型數據倉庫系統架構設計復雜,是因為考慮到了未來3-5年的擴展性,這樣的話,客戶不用太快花錢去重建數據倉庫系統,就能很穩定運行。主要體現在數據建模的合理性,數據倉庫方案中多出一些中間層,使海量數據流有足夠的緩沖,不至於數據量大很多,就運行不起來了.
H. 數據倉庫與資料庫的主要區別有
首先我們來了解數據倉庫和資料庫分別是什麼:
1、資料庫:是一種邏輯概念,用來存放數據的倉庫,通過資料庫軟體來實現。資料庫由很多表組成,表是二維的,一張表裡面有很多欄位。欄位一字排開,對數據就一行一行的寫入表中。資料庫的表,在於能夠用二維表現多維的關系。如:oracle、DB2、MySQL、Sybase、MSSQL Server等。
2、數據倉庫:是資料庫概念的升級。從邏輯上理解,資料庫和數據倉庫沒有區別,都是通過資料庫軟體實現存放數據的地方,只不過從數據量來說,數據倉庫要比資料庫更龐大德多。數據倉庫主要用於數據挖掘和數據分析,輔助領導做決策;
區別主要總結為以下幾點:
1.資料庫只存放在當前值,數據倉庫存放歷史值;
2.資料庫內數據是動態變化的,只要有業務發生,數據就會被更新,而數據倉庫則是靜態的歷史數據,只能定期添加、刷新;
3.資料庫中的數據結構比較復雜,有各種結構以適合業務處理系統的需要,而數據倉庫中的數據結構則相對簡單;
4.資料庫中數據訪問頻率較高,但訪問量較少,而數據倉庫的訪問頻率低但訪問量卻很高;
5.資料庫中數據的目標是面向業務處理人員的,為業務處理人員提供信息處理的支持,而數據倉庫則是面向高層管理人員的,為其提供決策支持;
6.資料庫在訪問數據時要求響應速度快,其響應時間一般在幾秒內,而數據倉庫的響應時間則可長達數幾小時
I. 資料庫和數據倉庫有什麼區別
數據倉復庫是一個概念,他是藉助於制資料庫實現的。我們目前所說的資料庫一般都是指關系型資料庫,其實還有多維資料庫、內存資料庫等。這些都可以作為數據倉庫來使用,數據倉庫主要是為了做數據分析和挖掘而設計的一種建模方式。