1. 程式人生 > >1.1什麽是數據倉庫

1.1什麽是數據倉庫

中間 olt 配置 數據存儲 有助於 單位 開發 風格 系統類型

數據 倉庫是一個databas旨在實現商業智能活動:旨在幫助用戶了解和增強其組織的績效。它專為查詢和分析而不是事務處理而設計,通常包含從事務數據派生的歷史數據,但可以包含來自其他來源的數據。數據倉庫將分析工作負載與事務工作負載分開,並使組織能夠合並來自多個源的數據。這有助於:

維護歷史記錄

分析數據以更好地了解業務並改善業務

除了關系數據庫之外,數據倉庫環境還可以包括提取,傳輸,轉換和加載(ETL)解決方案,統計分析,報告,數據挖掘功能,客戶端分析工具以及管理數據收集過程的其他應用程序。 ,將其轉化為有用的,可操作的信息,並將其交付給業務用戶。

為了實現增強商業智能的目標,數據倉庫使用從多個源收集的數據。源數據可能來自內部開發的系統,購買的應用程序,第三方數據聚合器和其他來源。它可能涉及交易,生產,營銷,人力資源等。在當今的大數據世界中,數據可能是網站上數十億次點擊,或者來自內置於復雜機器中的傳感器的大量數據流。

數據倉庫與在線事務處理(OLTP)系統不同。使用數據倉庫,您可以將分析工作負載與事務工 因此,數據倉庫是非常面向讀取的系統。與寫入和更新相比,它們具有更高的數據讀取量。這樣可以實現更好的分析性能,並避免影響您的事務系統。可以優化數據倉庫系統,以整合來自多個來源的數據,以實現關鍵目標:它成為您組織的“單一事實來源”。擁有所有用戶可以關註的一致數據源是非常有價值的; 它可以防止許多爭議並提高決策效率。

數據倉庫通常存儲數月或數年的數據以支持歷史分析。數據倉庫中的數據通常通過來自多個數據源的提取,轉換和加載(ETL)過程加載。現代數據倉庫正朝著提取,加載,轉換(ELT)架構發展,其中所有或大多數數據轉換都在托管數據倉庫的數據庫上執行。重要的是要註意,定義ETL過程是數據倉庫設計工作的很大一部分。同樣,ETL操作的速度和可靠性是數據倉庫啟動和運行後的基礎。

數據倉庫的用戶執行通常與時間相關的數據分析。例如,包括去年的銷售數據,庫存分析以及按產品和客戶分類的利潤。但是時間關註與否,用戶希望他們認為合適的數據“切片和切塊”,而設計良好的數據倉庫將足夠靈活以滿足這些需求。用戶有時需要高度聚合的數據,有時他們需要深入了解詳細信息。更復雜的分析包括趨勢分析和數據挖掘,它們使用現有數據來預測趨勢或預測未來。數據倉庫充當中間件商業智能環境使用的底層引擎,為最終用戶提供報告,儀表板和其他界面。

雖然上面的討論集中在術語“數據倉庫”上,但還有兩個重要的術語需要提及。這些是數據集市和操作數據存儲(ODS)。

數據集市與數據倉庫具有相同的作用,但其範圍有限。它可以服務於某個特定部門或業務線。數據集市與數據倉庫的優勢在於,由於其有限的覆蓋範圍,它可以更快地創建。但是,數據集市也會產生不一致的問題。在數據集市中保持數據和計算定義一致需要嚴格的紀律。這個問題已被廣泛認可,因此數據集市有兩種風格。獨立數據集市是直接從源數據饋送的數據集市。他們可以變成信息不一致的島嶼。從屬數據集市從現有數據倉庫提供。依賴數據集市可以避免不一致的問題,但它們要求已經存在企業級數據倉庫。

存在操作數據存儲以支持日常操作。ODS數據被清理和驗證,但它在歷史上並不深刻:它可能只是當天的數據。ODS不是支持數據倉庫可以處理的歷史豐富的查詢,而是為數據倉庫提供了訪問最新數據的位置,這些數據尚未加載到數據倉庫中。ODS還可以用作加載數據倉庫的源。隨著數據倉庫加載技術變得更加先進,數據倉庫可能不再需要ODS作為加載數據的源。相反,恒定的涓流進給系統可以近乎實時地加載數據倉庫。

引入數據倉庫的常用方法是參考William Inmon提出的數據倉庫的特征:

主題導向

集成

非易失

時間變化

主題導向

數據倉庫旨在幫助您分析數據。例如,要了解有關公司銷售數據的更多信息,您可以構建專註於銷售的數據倉庫。使用此數據倉庫,您可以回答諸如“去年誰是我們這個項目的最佳客戶?”之類的問題。或“明年誰有可能成為我們最好的客戶?” 這種按主題定義數據倉庫的能力,在這種情況下是銷售,使數據倉庫面向主題。

集成

整合與學科定位密切相關。數據倉庫必須將來自不同來源的數據放入一致的格式。他們必須解決諸如命名沖突和計量單位之間的不一致之類的問題。當他們實現這一目標時,他們被認為是整合的。

非易失

非易失性意味著, 一旦進入數據倉庫,數據就不應該改變。這是合乎邏輯的,因為數據倉庫的目的是使您能夠分析發生的情況。

時間變化

數據倉庫專註於隨時間的變化是術語時變的意思。為了發現趨勢並識別業務中隱藏的模式和關系,分析師需要大量數據。這與在線事務處理(OLTP)系統形成鮮明對比,後者的性能要求要求將歷史數據移動到存檔。

1.1.1數據倉庫的主要特征

凱數據倉庫的特征如下:

數據的結構簡化了訪問和高速查詢性能。

最終用戶是時間敏感的,並且渴望思考速度的響應時間。

使用大量歷史數據。

查詢通常會檢索大量數據,可能是數千行。

預定義和即席查詢都很常見。

數據加載涉及多個源和轉換。

通常,具有高數據吞吐量的快速查詢性能是成功數據倉庫的關鍵。

1.2對比OLTP和數據倉庫環境
OLTP系統和數據倉庫之間存在重要差異。系統類型之間的一個主要區別是數據倉庫不僅僅是第三範式(3NF),這是OLTP環境中常見的一種數據規範化。

數據倉庫和OLTP系統有著非常不同的要求。以下是典型數據倉庫和OLTP系統之間差異的一些示例:

工作量

數據倉庫旨在適應即席查詢和數據分析。您可能不會提前知道數據倉庫的工作負載,因此應優化數據倉庫以便在各種可能的查詢和分析操作中良好運行。

OLTP系統僅支持預定義的操作。您的應用程序可能經過專門調整或設計為僅支持這些操作。

數據修改

ETL過程(每晚或每周運行)使用批量數據修改技術定期更新數據倉庫。數據倉庫的最終用戶不會直接更新數據倉庫,除非使用分析工具(如數據挖掘)來預測相關概率,將客戶分配到細分市場並開發客戶檔案。

在OLTP系統中,最終用戶會定期向數據庫發出單獨的數據修改語句。OLTP數據庫始終是最新的,並反映每個業務事務的當前狀態。

架構設計

數據倉庫通常使用部分非規範化模式來優化查詢和分析性能。

OLTP系統通常使用完全規範化的模式來優化更新/插入/刪除性能,並保證數據的一致性。

典型的操作

典型的數據倉庫查詢掃描數千或數百萬行。例如,“查找上個月所有客戶的總銷售額”。

典型的OLTP操作只訪問少數記錄。例如,“檢索此客戶的當前訂單”。

歷史數據

數據倉庫通常存儲數月或數年的數據。這是為了支持歷史分析和報告。

OLTP系統通常只存儲數周或數月的數據。OLTP系統僅根據需要存儲歷史數據,以成功滿足當前事務的要求。

1.3通用數據倉庫任務
作為一個O.racle數據倉庫管理員或設計人員,您可以期望參與以下任務:

配置Oracle數據庫以用作數據倉庫

設計數據倉庫

將數據庫和數據倉庫軟件升級到新版本

管理模式對象,例如表,索引和物化視圖

管理用戶和安全性

開發用於提取,轉換和加載(ETL)過程的例程

根據數據倉庫中的數據創建報告

備份數據倉庫並在必要時執行恢復

監控數據倉庫的性能並根據需要采取預防或糾正措施

在中小型數據倉庫環境中,您可能是執行這些任務的唯一人員。在大型企業環境中,作業通常分為幾個DBA和設計人員,每個人都有自己的專長,例如數據庫安全性或數據庫調優

1.1什麽是數據倉庫