成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

【DBMS學習系列】DBMS(數據庫管理系統)的存儲模型

數據庫 其他數據庫
On-Line Analytical Processing,簡稱OLAP(聯機分析處理),是一種用于處理大規模數據的技術,它提供了一種靈活的分析和查詢方式,能夠幫助用戶從不同維度來分析和理解業務數據。

一、前置知識

1.1 什么是OLAP 和 OLTP?

On-Line Analytical Processing,簡稱OLAP(聯機分析處理),是一種用于處理大規模數據的技術,它提供了一種靈活的分析和查詢方式,能夠幫助用戶從不同維度來分析和理解業務數據。

On-Line Transaction Processing,簡稱OLTP(聯機事務處理),是一種數據處理類型,包括執行多個并發的事務,例如網上銀行、購物、訂單處理等。

OLAP和OLTP的主要區別:聯機分析處理 (OLAP) 系統的主要用途是分析聚合數據,而聯機事務處理 (OLTP) 系統的主要用途是處理數據庫事務。

? 使用 OLAP 系統來生成報告、執行復雜的數據分析和確定趨勢。

? 使用 OLTP 系統來處理訂單、更新庫存和管理用戶賬戶

OLAP和OLTP的相似之處:都是用于存儲和處理大量數據的數據庫管理系統,都需要高效可靠的 IT 基礎設施才能平穩運行。

1.2 OLAP WorkLoad

OLAP經常對大量的Read-Only數據進行順序掃描。所以底層的OLAP數據庫需要把各個數據條目按照條件篩選出來,然后拼接在一起。

OLAP使用索引來查找數據,不需要順序掃描。

? 基于樹的索引(B+樹)用于具有低選擇性謂詞的查詢。

? 需要適應增量更新

1.3 順序掃描的優化點

? 數據編碼/壓縮

? 指令預取

? 并行化

? 聚類/排序

? 延遲物化

? 物化視圖/結果緩存

? 數據跳過

? 數據并行化/向量化

? 代碼特化/編譯

二、DBMS的存儲模型

DBMS,數據庫管理系統。 這里指的比較通用,不區分OLAP數據庫,OLTP數據庫。

DBMS的存儲模型決定了它如何把磁盤和內存里的數據在物理上有效地組織起來。

一般有三種模型:N-ary Storage Model (NSM,行存儲)、Decomposition Storage Model (DSM,列存儲)、Hybrid Storage Model (PAX,混合存儲),前兩種是兩個方向的極端,第三種PAX是前兩種的折中。計算機領域很多方案的設計都是這種折中,權衡的思想。

2.1 N-ary Storage Model (NSM,行存儲)

NSM就是我們所說的行存儲,DBMS把每個tuple中的所有屬性連續的存儲在一個Page中。

這樣的存儲方式對于OLTP這種寫操作較多且通常只訪問單個的entities來說是非常理想的。

圖片圖片

但對于OLAP場景來說,通常只對指定的幾個列做分析,這樣會導致讀取很多無效的數據(不會用到的列的數據也被讀出來了),從而影響查詢的效率。例如下面的例子:

圖片圖片

因此催生出了列式存儲。

2.2 Decomposition Storage Model (DSM,列存儲)

DSM就是我們常說的列存儲,在DSM中,DBMS把所有tuples的每個列單獨連續的存儲在Page中。每個列都維護單獨的文件進行存儲。

這種存儲方式有利于OLAP這種讀場景較多且會對某些列進行大量查詢的場景。在OLAP場景下,針對某個列進行過濾或聚合時,則只需要讀這個列所在的Page就行。

圖片圖片

下面是一個DSM在OLAP的例子:關于在不同page里(不同列)屬于同一個元組的數據的識別方法有兩種,一種是固定長度的偏移(這種可能造成空間浪費,取決于字節數最大的那個值),另一種是變長偏移(借助字典編碼方式,工程實現里一般都是采用這種方式)。

圖片圖片

DSM的優缺點如下:

優點:1、減少大量的無效I/O查詢。2、查詢更快,因為增加了數據本地性和緩存數據復用3、更好的數據壓縮(同一列的數據類型一樣,一般可以采用某種數據編碼方式統一壓縮)

缺點:1、點查、插入、更新、刪除比較慢,因為有元組的切分、拼接、重組等過程。

2.3 Hybrid Storage Model (PAX,混合存儲)

PAX是一種混合存儲模型,是行存和列存的一種綜合折中存儲模型。

它先水平地把元組行切分成多個groups。 然后每個組group內再垂直地把元組的數星切分到列里,它在每個Page中垂直區分保存表的每個屬性。 全局元數據目錄包含了文件的row group的偏移(例如orc、parquet文件的footer),每一個row group也有自己的元數據header。

采用這種模型的目的是為了既能獲得列存的快速處理的高性能又能獲得行存的空間本地性優勢,Parquet、 ORC、Arrow都是采用的PAX這種存儲模式。

示意圖如下:

圖片圖片

以上就是本文要講的主要內容。

接下來的1-2個章節會學習關于數據格式(data-format)的設計、 數據壓縮等內容。

責任編輯:武曉燕 來源: 大數據技術部落
相關推薦

2015-05-20 13:12:53

ALTIBASE內存數據庫

2024-03-14 12:17:00

數據庫數據模型

2017-12-29 08:26:28

存儲引擎MySQL

2020-03-09 20:52:43

數據多模型數據庫數據庫

2020-11-24 17:22:15

數據庫MySQL技術

2022-07-12 11:01:03

數據庫

2021-09-28 09:16:43

SQLancerDBMS邏輯漏洞

2019-04-16 15:43:21

CheckSumRAID存儲

2023-08-24 08:47:38

2021-11-26 22:07:57

數據庫管理Mongodb

2015-03-31 11:28:00

ALTIBASE

2010-04-20 13:59:30

Oracle管理規則

2009-07-02 15:09:05

數據庫自動存儲管理ASM

2011-03-04 12:46:57

Oracle數據庫自動存儲管理(ASM)

2017-08-22 17:10:45

數據庫MySQL事務模型

2023-10-08 08:11:54

2021-09-02 07:04:37

CIO應用程序

2019-02-28 10:37:19

開源數據庫Oracle

2018-04-16 09:21:04

Oracle數據庫操作系統存儲

2017-09-03 15:41:31

數據庫存儲分布式
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美黑人一级爽快片淫片高清 | 中文在线一区二区 | 激情一区二区三区 | 亚洲成网站 | 久久国产精品久久久久久久久久 | 国产激情视频在线免费观看 | 日韩欧美精品在线播放 | 亚洲精品乱码久久久久久按摩观 | 黄色一级网 | 日本久久一区二区三区 | 综合成人在线 | 欧美四虎 | 黑人巨大精品欧美一区二区一视频 | 日韩av一区二区在线观看 | 久久伊| 国产成人在线视频播放 | 在线观看中文字幕 | 青娱乐av| 五月婷六月丁香 | 日韩一级| 欧美日韩网站 | 91av视频在线 | 日本一区二区视频 | 久久久久久综合 | 国产精品久久国产精品 | 国产在线观看一区二区 | 精品国产黄a∨片高清在线 www.一级片 国产欧美日韩综合精品一区二区 | 精品久久久久久久 | 国产精品久久久久久久久久久新郎 | 97久久精品午夜一区二区 | 亚洲一区二区高清 | 久久99精品久久久久久 | 国产高清一区二区 | 毛色毛片免费看 | 91麻豆精品国产91久久久更新资源速度超快 | 久国产| 国产精品久久久乱弄 | 日本中文字幕视频 | 久久久久国产精品免费免费搜索 | 午夜午夜精品一区二区三区文 | 午夜码电影 |