資料倉儲和資料庫的區別是什麼?

2020-10-19 18:00:28

資料倉儲和資料庫的區別:1、資料庫儲存的是原始資料,沒經過任何加工;而資料倉儲是為了滿足資料分析需要設計的,對源資料進行了ETL過程,資料抽取工作分抽取、清洗、轉換、裝載;2、資料倉儲的資料量要比資料庫大很多。

(推薦教學:)

一、資料倉儲

  1. 什麼是資料倉儲?
    資料倉儲(Data Warehouse),可簡寫為DW或DWH,資料倉儲,是為了企業所有級別的決策制定計劃過程,提供所有型別資料型別的戰略集合。它出於分析性報告和決策支援的目的而建立。為需要業務智慧的企業 ,為需要指導業務流程改進、監視時間,成本,品質以及控制等;
  2. 資料倉儲能幹什麼?(舉幾個栗子)

    1. 年度銷售目標的制定,需要根據以往的歷史報表進行決策,不能隨便制定。
    2. 優化業務流程
      例如:某電商平臺某品牌的手機,在過去5年主要的的購買人群的年齡在什麼年齡段,在那個季節購買量人多,這樣就可以根據這個特點為目標人群設定他們主要的需求和動態分配產生的生產量,和倉庫的庫存。
  3. 資料倉儲的特點

    1. 資料倉儲是面向主題的。
      1. 與傳統的資料庫不一樣,資料倉儲是面向主題的,那什麼是主題呢?首頁主題是一個較高乘次的概念,是較高層次上企業資訊系統中的資料綜合,歸類並進行分析的物件。在邏輯意義上,他是對企業中某一個宏觀分析領域所涉及的分析物件。(說人話:就是使用者用資料倉儲進行決策所關心的重點方面,一個主題通常與多個操作資訊型系統有關,而操作型資料庫的資料組織面向事務處理任務,各個任務之間是相互隔離的);
    2. 資料倉儲是整合的。
      1. 資料倉儲的資料是從原來的分散的資料庫資料(mysql等關係型資料庫)抽取出來的。操作型資料庫與DSS(決策支援系統)分析型資料庫差別甚大。第一,資料倉儲的每一個主題所對應的源資料在所有的各個分散的資料庫中,有許多重複和不一樣的地方,且來源於不同的聯機系統的資料都和不同的應用邏輯捆綁在一起;第二,資料倉儲中的綜合資料不能從原來有的資料庫系統直接得到。因此子在資料進入資料倉儲之前,必然要經過統一與綜合,這一步是資料倉儲建設中最關鍵,最複雜的一步,所要挖成的工作有:
        1. 要統計源資料中所有矛盾之處,如欄位的同名異議、異名同義、單位不統一,字長不統一等。
        2. 進行資料的綜合和計算。資料倉儲中的資料綜合工作可以在原有資料庫抽取資料時生成,但許多是在資料倉儲內部生成的,即進入資料倉儲以後進行綜合生成的。
    3. 資料倉儲的資料是隨著時間的變化而變化的。
      1. 資料倉儲中的資料不可更新是針對應用來說的,也就是說,資料倉儲的使用者進行分析處理是不進行資料更新操作的。但並不是說,在從資料整合輸入資料倉儲開始到最後被刪除的整個生存週期中,所有的資料倉儲資料都是永遠不變的。
      2. 資料倉儲的資料是隨著時間變化而變化的,這是資料倉儲的特徵之一。這一特徵主要有以下三個表現:
        1. 資料倉儲隨著時間變化不斷增加新的資料內容。資料倉儲系統必須不斷捕捉OLTP資料庫中變化的資料,追加到資料倉儲當中去,也就是要不斷的生成OLTP資料庫的快照,經統一整合增加到資料倉儲中去;但對於確實不在變化的資料庫快照,如果捕捉到新的變化資料,則只生成一個新的資料庫快照增加進去,而不會對原有的資料庫快照進行修改。
        2. 資料庫隨著時間變化不斷刪去舊的資料內容 。資料倉儲內的資料也有儲存期限,一旦過了這一期限,過期資料就要被刪除。只是資料庫內的資料時限要遠遠的長於操作型環境中的資料時限。在操作型環境中一般只儲存有60~90天的資料,而在資料倉儲中則要需要儲存較長時限的資料(例如:5~10年),以適應DSS進行趨勢分析的要求。
        3. 資料倉儲中包含有大量的綜合資料,這些綜合資料中很多跟時間有關,如資料經常按照時間段進行綜合,或隔一定的時間片進行抽樣等等。這些資料要隨著時間的變化不斷地進行從新綜合。因此資料倉儲的資料特徵都包含時間項,以標明資料的歷史時期。
    4. 資料倉儲的資料是不可修改的。
      1. 資料倉儲的資料主要提供企業決策分析之用,所涉及的資料操作主要是資料查詢,一般情況下並不進行修改操作。資料倉儲的資料反映的是一段相當長的時間內歷史資料的內容,是不同時點的資料庫快照的集合, 以及基於這些快照進行統計、綜合和重組的匯出資料,而不是聯機處理的資料。資料庫中進行聯機處理的書庫進過整合輸入到資料倉儲中,一旦資料倉儲存放的資料已經超過資料倉儲的資料儲存期限,這些資料將從當前的資料倉儲中刪去。因為資料倉儲只進行資料查詢操作,所以資料倉儲當中的系統要比資料庫中的系統要簡單的多。資料庫管理系統中許多技術難點,如完整性保護、並行控制等等,在資料倉儲的管理中幾乎可以省去。但是由於資料倉儲的查詢資料量往往很大,所以就對資料查詢提出了更高的要求,他要求採用各種複雜的索引技術;同時資料倉儲面向的是商業企業的高層管理層,他們會對資料查詢的介面友好性和資料表示提出更高的要求;

二、資料倉儲和資料庫的區別

  1. 想了解區別之前,我們需要了解三個概念,資料庫軟體、資料庫和資料倉儲是什麼?
    1. 資料庫軟體:是一種軟體(並不是連結資料庫的圖形化使用者端)。用來實現資料庫邏輯過程,屬於物理層。
    2. 資料庫:是一種邏輯概念,用來存放資料的倉庫,通過資料庫軟體來實現。資料庫由很多表組成,表是二維的,一張表裡面有很多欄位。欄位一字排開,對資料就一行一行的寫入表中。資料庫的表,在於能夠用二維表現多維的關係。如:oracle、DB2、MySQL、Sybase、MSSQL Server等。
    3. 資料倉儲:是資料庫概念的升級。從邏輯上理解,資料庫和資料倉儲沒有區別,都是通過資料庫軟體實現存放資料的地方,只不過從資料量來說,資料倉儲要比資料庫更龐大德多。資料倉儲主要用於資料探勘和資料分析,輔助領導做決策;
    4. 在IT的架構體系中,資料庫是必須存在的,必須要有地方存資料。比如現在的網購等電商。物品的存貨多少,貨品的價格,使用者的賬戶餘額之類的。這些資料都是存放在後臺資料庫中。或者最簡單的理解,我們現在的微信、微博和QQ等賬戶和密碼。在後臺資料庫必須是一個user表,欄位起碼有兩個嗎,即使用者名稱和密碼,然後我們的資料就一行一行的存在表上面。當我們登入的時候,我們填寫了使用者名稱和密碼,這些資料就會回傳到回臺去,去跟表上面的資料匹配,匹配成功了,就能登入。匹配不成功就會報錯,這就是資料庫,資料庫在生產環境就是用來幹活的。凡是跟業務有關應用掛鉤的,我們都使用資料庫。
    5. 資料倉儲是BI下的其中一種技術。由於資料庫跟業務應用掛鉤的,所以一個資料庫不可能裝下一家公司的所有資料。資料庫的表設計往往是針對某一個應用進行設計的。比如剛剛的登入功能,這張user表上就只有這兩個欄位,沒有別的欄位了。到那時這張表符合應該,沒有問題,但是這張表不符合分析。比如我想知道在哪個時間段,使用者的量最多?哪個使用者一年購物最多?諸如此類的指標。那就要從新設計資料庫的表結構了。對於資料分析和資料探勘,我們引入了資料倉科概念。資料倉儲的表結構是依照分析需求,分析維度,分析指標進行設計的。
    6. 資料庫與資料倉儲的區別實際講的是OLTP與OLAP的區別。
      1. 操作型處理,叫聯機事務處理OLTP(On-Line Transaction Processing),也可以稱面向交易的處理系統,它是針對具體業務在資料庫聯機的日常操作,通常對少數記錄進行查詢、修改。使用者較為關心操作的響應時間、資料的安全性、完整性和並行的支援使用者數等問題。傳統的資料庫系統作為資料管理的主要手段,主要用於操作型處理。
      2. 分析型處理,叫聯機分析處理OLAP(On-Line Analytical Processing)一般針對某些主題歷史資料進行分析,支援管理決策。
操作型處理分析型處理
細節的綜合或者提煉的
實體-關係(E-R)模型星型模型或雪花模型
儲存瞬間資料儲存歷史資料,不包含最近的資料
可更新的唯讀、只追加
一次操作一個單元一次操作一個集合
效能要求高,響應時間短效能要求寬鬆
面向事務面向分析
一次運算元據量小支援決策需求
資料量小資料量大
客戶訂單、庫存水平和銀行賬戶查詢客戶收益分析、市場細分

三.尾巴

1、如有錯誤歡迎大家指出,我會及時更正,有什麼不懂也可以留言提問,互相交流嗎。
2、也許大家覺得這沒什麼,但是我會認真對待,把它當成我的筆記、心得、這樣才能提升自己。

以上就是資料倉儲和資料庫的區別是什麼?的詳細內容,更多請關注TW511.COM其它相關文章!