數據庫的應用類型OLTP和OLAP

數據庫的應用類型

對於SQL開發人員來說,必須先要了解進行SQL編程的對象類型,即要開發的數據庫應用是哪種類型。一般來說,可將數據庫的應用類型分爲OLTP(OnLine Transaction Processing,聯機事務處理)和OLAP(OnLine Analysis Processing,聯機分析處理)兩種。

OLTP是傳統關係型數據庫的主要應用,其主要面向基本的、日常的事務處理,例如銀行交易。

OLAP是數據倉庫系統的主要應用,支持複雜的分析操作,側重決策支持,並且提供直觀易懂的查詢結果。

一、OLTP

OLTP也被稱爲面向交易的處理系統,其基本特徵是可以立即將顧客的原始數據傳送到計算中心進行處理,並在很短的時間內給出處理結果,這個過程的最大優點是可以即時地處理輸入的數據、及時地回答,因此OLTP又被稱爲實時系統(Real Time System)。衡量OLTP系統的一個重要性能指標是系統性能,具體體現爲實時響應時間(Response Time),即從用戶在終端輸入數據到計算機對這個請求做出回覆所需的時間。OLTP數據庫旨在使事務應用程序僅完成對所需數據的寫入,以便儘快處理單個事務。

OLTP數據庫通常具有以下特徵:

  • 支持大量併發用戶定期添加和修改數據。
  • 反映隨時變化的單位狀態,但不保存其歷史記錄。
  • 包含大量數據,其中包括用於驗證事務的大量數據。
  • 具有複雜的結構。
  • 可以進行優化以對事務活動做出響應。
  • 提供用於支持單位日常運營的技術基礎結構。
  • 個別事務能夠很快地完成,並且只需要訪問相對較少的數據。OLTP系統旨在處理同時輸入的成百上千的事務。

二、OLAP

OLAP的概念最早是由關係數據庫之父E.F.Codd博士於1993年提出的,是一種用於組織大型商務數據庫和支持商務智能的技術。OLAP數據庫分爲一個或多個多維數據集,每個多維數據集都由多維數據集管理員組織和設計,以適應用戶檢索和分析數據的方式,從而更易於創建和使用所需的數據透視表和數據透視圖。

OLAP是共享多維信息的、針對特定問題的聯機數據訪問和分析的快速軟件技術。它通過對信息的多種可能的觀察形式進行快速、穩定一致和交互性的存取,允許管理決策人員對數據進行深入觀察。決策數據是多維數據,是決策的主要內容。OLAP專門用於支持複雜的分析操作,側重對決策人員和高層管理人員的決策支持,可以根據分析人員的要求快速、靈活地進行大數據量的複雜查詢處理,並且以一種直觀易懂的形式將查詢結果提供給決策人員,以便他們準確掌握企業(公司)的經營狀況、瞭解對象的需求、制定正確的方案。

OLAP具有靈活的分析功能、直觀的數據操作和分析結果可視化表示等突出優點,從而使用戶對基於大量複雜數據的分析變得輕鬆而高效,利於用戶迅速做出正確判斷。OLAP可用於證實人們提出的複雜假設,是以圖形或表格的形式來表示的對信息的總結。OLAP並不將異常信息標記出來,採取的是一種知識證實的方法。

OLAP的主要特點是直接仿照用戶的多角度思考模式,預先爲用戶組建多維的數據模型。在這裏,維指的是用戶的分析角度,例如對銷售數據的分析,時間週期是一個維度,產品類別、分銷渠道、地理分佈、客戶羣類也分別是不同的維度。一旦多維數據模型建立完成,用戶可以快速地從各個分析角度獲取數據,也能動態地在各個角度之間切換數據或者進行多角度綜合分析,具有極大的分析靈活性。這也是OLAP在近年來被廣泛關注的根本原因。OLAP從設計理念和真正實現上都與舊有的管理信息系統有着本質的區別。

下面介紹一下OLAP的基本概念:

  • 維(Dimension):是用戶觀察數據的特定角度,是問題的一類屬性,屬性集合構成一個維(時間維、地理維等)。
  • 維的層次(Level):用戶觀察數據的某個特定角度(即某個維)還可能存在細節程度不同的各個描述方面(時間維包括日期、月份、季度、年)。
  • 維的成員(Member):即維的一個取值,是數據項在某個維中位置的描述,如“某年某月某日”是在時間維上的位置描述。
  • 度量(Measure):多維數組的取值。

OLAP的基本多維分析操作有鑽取(Drill-up和Drill-down)、切片(Slice)和切塊(Dice)以及旋轉(Pivot)等。

  • 鑽取:改變維的層次,變換分析的粒度。它包括向下鑽取(Drill-down)和向上鑽取(Drill-up)/上滾(Roll-up)。向上鑽取是在某一維上將低層次的細節數據概括到高層次的彙總數據,或者減少維數;而向下鑽取則相反,從彙總數據深入到細節數據進行觀察或增加新維。
  • 切片和切塊:在一部分維上選定值後,關心度量數據在剩餘維上的分佈。如果剩餘的維只有兩個,則是切片;如果有三個或以上,則是切塊。
  • 旋轉:變換維的方向,即在表格中重新安排維的放置(如行列互換)。

三、比較

OLTP與OLAP的比較

OLTP主要執行基本的、日常的事務處理,比如在銀行存取一筆款,就是一個事務交易。OLTP的特點一般有:

  • 實時性要求高。
  • 查詢的數據量不是很大。
  • 交易一般是確定的,所以OLTP是對確定性的數據進行存取。
  • 併發性要求高,並且嚴格要求事務的完整性、安全性。

OLAP是數據倉庫系統的主要應用,其典型的應用就是複雜的動態報表系統。OLAP的特點一般有:

  • 實時性要求不是很高,很多應用最多每天更新一次數據。
  • 數據量大。因爲OLAP支持的是動態查詢,用戶要通過對很多數據的統計才能得到想要知道的信息,如時間序列分析等,所以處理的數據量很大。

因爲重點在於決策支持,所以查詢一般是動態的,也就是說允許用戶隨時提出查詢的要求。因此,在OLAP中通過一個重要概念“維”來搭建一個動態查詢的平臺(或技術),供用戶自己決定需要知道的信息。

OLAP和OLTP的主要區別如表所示。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章