成人免费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面向對象

2021-07-12 11:32:36

數據庫悲觀模式

2015-06-23 13:56:30

數據庫設計面向對象

2020-10-22 12:53:45

數據庫云服務全密態

2009-12-09 15:53:16

Visual Stud

2010-08-26 09:01:27

Infobright

2010-08-26 09:13:02

Infobright

2015-10-09 10:49:06

AWS數據庫遷移RDS

2016-10-14 19:30:21

云計算云數據庫數據庫

2016-11-09 13:46:00

云數據庫

2011-06-29 14:01:30

多數據庫實例效率

2016-08-05 09:51:25

GPU大數據

2011-03-17 12:33:56

面向對象數據庫電子商務

2011-03-17 13:00:27

面向對象數據庫電子商務

2011-05-13 09:42:21

2013-07-17 09:42:34

云計算數據庫NoSQL

2011-05-13 13:54:02

數據庫文檔數據庫

2011-05-13 13:38:49

數據庫對象

2010-04-22 16:16:35

Oracle數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日日干天天操 | 影音先锋中文字幕在线观看 | 久久成人18免费网站 | 91玖玖| 午夜天堂精品久久久久 | 欧美13videosex性极品 | aaa一区| 在线视频一区二区三区 | 国产欧美精品一区二区三区 | 国产中文视频 | 91精品国产综合久久久久久 | 亚洲成人精品久久 | 高清色| 一区二区精品 | 99久久免费精品国产免费高清 | 91资源在线 | 日日天天 | 日日夜夜操天天干 | 亚洲欧美在线观看 | 国产视频精品在线观看 | 婷婷久久五月 | 日本手机看片 | 国产精品一区二区三级 | 激情国产 | 亚洲欧美中文字幕在线观看 | 欧美一级免费 | 中文字幕电影在线观看 | 成人免费在线小视频 | 欧美成人h版在线观看 | 99久久精品视频免费 | 国产精品91久久久久久 | 超碰在线免费公开 | 久久在看| www.夜夜草 | 一呦二呦三呦国产精品 | 久久伊人一区二区 | 中文字幕乱码亚洲精品一区 | 日本三级全黄三级三级三级口周 | 在线看免费的a | 国产精品视频一二三区 | 视频在线观看一区二区 |