背景
在接觸大數據兩年的時間裡,資料倉儲這個詞頻繁出現在我的耳朵裡,隨著知識的逐漸積累,對資料倉儲和資料庫也有了一個大概的了解。
概念
資料庫(DB)
簡單來說,資料庫是儲存資料的倉庫,主要有關聯類型資料庫和非關係型資料庫,這是一種邏輯上的概念。
資料倉儲(DW)
從邏輯上來理解,且資料庫的概念一致,且都是儲存資料的倉庫,只是資料倉儲的資料量較大。
資料倉儲的特點
資料倉儲是主題導向的
那麼什麼是主題呢,簡單來說,主題就是使用者在使用資料倉儲時所關心的面向。
資料倉儲時不支援修改的,這點好理解,資料倉儲不像資料庫,不支援update和delete操作。
資料倉儲的資料是隨時間的變化而變化的,這與上一條並不衝突,這個變化不是指update或是delete兒產生的變化,而是隨著時間的變化,不斷的增加新的內容,或刪除舊的內容。
資料倉儲是多個異質資料來源所整合的
#資料倉儲的一般是歷史資料
#資料倉儲是弱交易的,因為資料倉儲存的是歷史數據,一般都讀(分析)資料場景。
資料庫是為擷取資料而設計,資料倉儲是為分析資料而設計。
資料庫與資料倉儲的差異
資料庫是為擷取資料而設計,資料倉儲是為分析資料而設計。資料庫和資料倉儲的差異本質上是OLTP與OLAP的差異
OLTP:線上事務處理(On-Line Transaction Processing)是傳統的關係型資料庫的應用。
OLTP是使用者導向的、程式設計師的事務處理、客戶的查詢處理。
OLTP系統強調資料庫記憶體效率,強調記憶體各種指標的指令率,強調綁定變量,強調並發操。使用者較為關心操作的回應時間、資料的安全性、完整性和並發的支援使用者數等問題。
OLTP系統的存取由於要確保原子性,所以有事務機制和復原機制。主要用於資料抓取。
OLAP:線上分析事務處理(On-Line Analytical Processing)
OLAP是市場導向的,用於知識工作者(經理、主管和資料分析人員)的資料分析。
OLAP通常會整合多個異質資料來源的數據,數量龐大。
是資料倉儲系統的主要應用,支援複雜的分析操作,專注於決策支持,並提供直覺易懂的查詢結果。
OLAP系統則強調資料分析,強調SQL執行市場,強調磁碟I/O,強調分割等。主要用於數據分析。
OLAP系統一般儲存的是歷史數據,所以大部分都是唯讀操作,不需要事務。
以上是資料庫與資料倉儲的聯繫與區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!