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

面試 | 面向行的數據庫VS面向列的數據庫

運維 數據庫運維
數據庫的數據存儲有兩種類型,一種是面向行的(row-oriented)數據庫,另一種是面向列的(column-oriented )數據庫。

[[422805]]

本文轉載自微信公眾號「大數據技術與數倉」,作者西貝。轉載本文請聯系大數據技術與數倉公眾號。

總覽

數據庫的數據存儲有兩種類型,一種是面向行的(row-oriented)數據庫,另一種是面向列的(column-oriented )數據庫。

面向行(事務型) 數據庫

該類數據庫是根據記錄(record)組織數據的,將所有與記錄相關聯的數據保存在內存中。面向行的數據庫是組織數據的傳統方式,并且為快速存儲數據提供了一些關鍵優勢。它們經過優化,可以高效地讀取和寫入行。

常見的面向行的數據庫:

  • PostgreSQL
  • MySQL

優點

  • 行存儲的寫入是一次性完成,消耗的時間比列存儲少,并且能夠保證數據的完整性;
  • insert/update更容易

缺點

  • 沒有索引的查詢會產生大量的I/O
  • 建立索引需要花費大量時間和資源
  • 面對查詢的需求,數據庫必須被大量膨脹才能滿足性能的需求

面向列(分析型) 數據庫:

該類數據庫是按字段組織數據的,在內存中將所有與字段相關聯的數據保存在一起。該類數據庫在讀取和計算列有明顯的優勢。

常用的面向列的數據庫

  • AWS RedShift
  • Google BigQuery
  • HBase

優點

  • 只查詢涉及的列,會大量降低系統I/O,適合并發查詢
  • 數據類型一致,數據特征相似,能對數據進行高效壓縮
  • 非常適合做聚合操作

缺點

  • 缺乏數據完整性保證,寫入效率低
  • 不適合頻繁delete/update操作

面向行的數據庫

傳統的關系型數據庫管理系統(DBMS)都是面向行的。在行存儲或面向行的數據庫中,數據是逐行存儲的,這樣,行的第一列將挨著前一行的最后一列。

比如,有下面的一張表

這些數據將被存儲在一個面向行的數據庫中的一個磁盤上,按照下面這樣的順序一行一行的排列:

這允許數據庫快速寫入一行,因為要寫入數據,只需在數據的末尾添加另一行即可。

面向行的數據庫仍然通常用于聯機事務處理(OLTP)的應用程序,因為它們可以很好地管理對數據庫的寫操作。對于聯機分析處理(OLAP)的場景需要一個支持特定數據查詢的數據庫。這就是面向行的數據庫比面向列的數據庫慢的地方。

讀取面向行的數據庫

面向行的數據庫檢索行或一組行的速度很快,但在執行聚合時,它將額外的數據(列)帶入內存,這比只選擇要執行聚合的列要慢。此外,面向行的數據庫可能需要訪問的磁盤數量通常更多。

因此,我們可以看到,雖然向面向行的數據庫添加數據是快速和簡單的,但從中獲取數據可能需要使用額外的內存和訪問多個磁盤。

面向列的數據庫

數據倉庫的創建是為了支持數據分析。這些類型的數據庫通常對數據讀取做了優化。

在面向列的數據庫中,數據的存儲形式為列中的每一行都挨著同一列中的其他行。

仍然以上面的表為例:

一個表一次存儲一列,按照一行一行的順序排列:

寫入面向列的數據庫

如果我們想要添加一個新記錄,必須先定位數據的位置(比如HBASE的三級尋址),將每一列插入到它應該在的位置。

如果數據存儲在一個單獨的磁盤上,那么它將有與面向行的數據庫相同的額外內存問題,因為它需要將所有內容都放入內存中。但是,當存儲在單獨的磁盤上時,面向列的數據庫將有很大的好處。

從面向列的數據庫中讀取

只需要計算需要的列,減少磁盤掃描,減少不必要的內存開銷,只需要訪問極少數量的磁盤。

附錄(SQL知識大圖)

 

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

2009-12-09 14:21:14

VS 2005 Tea

2010-08-02 16:19:00

ibmdw面向對象

2020-10-22 12:53:45

數據庫云服務全密態

2021-07-12 11:32:36

數據庫悲觀模式

2015-06-23 13:56:30

數據庫設計面向對象

2009-12-09 15:53:16

Visual Stud

2010-08-26 09:01:27

Infobright

2010-08-26 09:13:02

Infobright

2016-11-09 13:46:00

云數據庫

2015-10-09 10:49:06

AWS數據庫遷移RDS

2016-10-14 19:30:21

云計算云數據庫數據庫

2011-06-29 14:01:30

多數據庫實例效率

2016-08-05 09:51:25

GPU大數據

2011-03-17 13:00:27

面向對象數據庫電子商務

2011-03-17 12:33:56

面向對象數據庫電子商務

2011-05-13 09:42:21

2013-07-17 09:42:34

云計算數據庫NoSQL

2009-05-08 09:56:37

MaxDBMySQL數據庫管理

2011-05-13 13:54:02

數據庫文檔數據庫

2011-05-13 13:38:49

數據庫對象
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精品国产91 | 亚洲一区二区成人 | 久久免费视频1 | 999久久久 | 国产成人一区 | 免费成人在线网站 | 91九色视频| 亚洲视频一区二区三区 | 日本不卡一区二区三区 | 国产一区二区三区四区五区3d | 午夜欧美一区二区三区在线播放 | 国产成人精品网站 | 国产精品波多野结衣 | 日韩 国产 在线 | 色影视| 成人免费在线观看 | 99re在线视频精品 | 亚洲国产一区二区三区 | 亚洲精品自在在线观看 | 久久国产一区二区三区 | 成人自拍视频网站 | 中文字幕1区2区3区 亚洲国产成人精品女人久久久 | 九九九久久国产免费 | 日本不卡免费新一二三区 | 亚洲精品二区 | 日韩精品一区二区在线观看 | 久久精品免费一区二区三 | 精产国产伦理一二三区 | 青青草华人在线视频 | a级毛片毛片免费观看久潮喷 | 日日噜噜噜夜夜爽爽狠狠视频97 | 精品欧美乱码久久久久久1区2区 | 黄色成人国产 | 欧美性猛片aaaaaaa做受 | 亚洲综合在线一区 | 国产aⅴ爽av久久久久久久 | 伊人看片 | 日本不卡高清视频 | 午夜三区 | 国产精品视频在线免费观看 | 日韩精品一区二区三区中文在线 |