概念
OLTP:聯機事務處理(On-Line transaction Processing)
OLAP:聯機分析處理(On-Line Analytical Processing)
(1)OLTP是傳統的關系型數據庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。OLTP系統強調數據庫的內存效率,強調內存各種指標的命令率,強調綁定變量,強調並發操作。
(2)OLAP是數據倉庫系統的主要應用,支持復雜的分析操作,側重決策支持,並支持提供直觀易懂的查詢結果,OLAP強調的數據分析,強調SQL執行市場,強調磁盤I/O,強調分區等。
區別
OLTP,也成為聯機事務處理,表示事務性非常高的系統,一般都是高可用的在線系統,以小的事務以及小的查詢為主。OLTP出現瓶頸的地方在於CPU與磁盤子系統。OLTP系統也是一個數據塊變化非常頻繁,語句提交非常頻繁的系統。
OLAP,聯機分析處理,有時候也叫DSS決策支持系統,也就是我們所說的數據倉庫,語句的執行量不是考核的標准,因為一條語句可能執行的時間會非常的長,讀取的數據也會非常的多,所以,在這樣的系統中,考核的標准往往是磁盤子系統的吞吐量(寬帶),如能達到多少MB/s流量。
分開設計與優化
在設計上要特別注意,如在高可用的OLTP環境中,不要盲目的把OLAP的技術拿過來用;
分區技術,假如大范圍使用分區關鍵字,而采用其他的字段作為where條件,那么,如果是本地索引,將不得不掃描多個索引,而性能變得更為低下,如果是全局索引,又失去分區的意義。
並行技術,例如,完成一個任務需要30分鍾,但是這些任務拆分成小人物,同時進行,可能就10分鍾就搞定,這樣就大大縮短時間了
數據庫設計
- OLTP采用實體-聯系ER模型和面向應用的數據庫設計.
- OLAP采用星型或雪花模型和面向主題的數據庫設計.