偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

NoSQL數(shù)據(jù)庫類型說明:列式數(shù)據(jù)庫

數(shù)據(jù)庫 其他數(shù)據(jù)庫
當需要大型數(shù)據(jù)模型時,最常使用這些數(shù)據(jù)庫。它們對于數(shù)據(jù)倉庫非常有用,或者在需要高性能或處理密集查詢時非常有用。

為了滿足對數(shù)據(jù)存儲不斷增長的需求,以及以最高效的方式容納數(shù)據(jù)多樣性,企業(yè)越來越傾向于選擇非標準數(shù)據(jù)庫類型。多年來,企業(yè)主要使用關系數(shù)據(jù)庫。然而,隨著需求的變化和存儲價格的下降,人們開始轉而使用非關系型數(shù)據(jù)庫。

[[426275]]

列式數(shù)據(jù)庫符合這種描述。這些是NoSQL數(shù)據(jù)庫,專為高度分析、復雜查詢任務而構建。與關系數(shù)據(jù)庫不同,列式數(shù)據(jù)庫按列而不是按行存儲數(shù)據(jù)。這些列被收集以形成子組。

這類數(shù)據(jù)庫的鍵名和列名不是固定的。同一列族或列簇中的列可以具有不同的行數(shù),并且可以容納不同類型的數(shù)據(jù)和名稱。

當需要大型數(shù)據(jù)模型時,最常使用這些數(shù)據(jù)庫。它們對于數(shù)據(jù)倉庫非常有用,或者在需要高性能或處理密集查詢時非常有用。

列式數(shù)據(jù)庫如何工作

關系型數(shù)據(jù)庫有固定的模式,它們具有行和列的表。寬列數(shù)據(jù)庫具有相似但不同的架構。它們也有行和列。但是,它們不是固定在表中,而是具有動態(tài)模式。每列單獨存儲。

如果存在相似(相關)的列,則將它們關聯(lián)到列族中,然后將這些列族與其他列族分開存儲。 行鍵是每個列族的第一列,作為行的標識符。此外,之后的每一列都有一個列鍵(名稱)。它標識行中的列,從而實現(xiàn)對列的查詢。值和時間戳出現(xiàn)在列鍵之后,說明數(shù)據(jù)何時被輸入或修改。

與每一行相關的列數(shù)或其名稱可能會有所不同。換句話說,并不是一個列族的每一列都有相同的行數(shù)。事實上,即使它們可能共享它們的名字,每一列都包含在一行中并且不會跨越所有行。

接觸過關系型數(shù)據(jù)庫的人都知道,關系型數(shù)據(jù)庫的每一列都有相同的行數(shù),只是碰巧有些字段有空值,或者看起來是空的。對于寬列數(shù)據(jù)庫,這些行不是空的,而是對于特定列根本不存在。

列族位于鍵空間中。每個鍵空間都包含一個完整的 NoSQL 數(shù)據(jù)存儲,并且正如模式對關系數(shù)據(jù)庫那樣,它具有相似的角色或重要性。然而,由于 NoSQL 數(shù)據(jù)存儲沒有集合結構,鍵空間代表無模式數(shù)據(jù)庫,其中包含數(shù)據(jù)存儲設計和它自己的屬性集。

當前最流行的列式數(shù)據(jù)庫之一是 MariaDB。它是作為 MySQL 的分支而創(chuàng)建,它很強大且可擴展,可處理很多不同的目的和大量的查詢。Apache Cassandra是柱狀數(shù)據(jù)庫的另一個例子,它處理跨多個服務器的大量數(shù)據(jù)負載,使數(shù)據(jù)高度可用。其他數(shù)據(jù)庫還包括專為分析設計的 Apache HBase、Hypertable和Druid。這些數(shù)據(jù)庫支持Outbrain、Spotify 和 Facebook等平臺的某些功能。

列族類型

  • 標準列族。這種列族類型類似于表;它包含一個鍵值對,其中鍵是行鍵,值存儲在列中,使用它們的名稱作為標識符。
  • 超級列族。超級列代表列數(shù)組。每個超級列都有一個名稱和一個值,將超級列映射到幾個不同的列。相關的超級列關聯(lián)在超級列族的單行種。與關系數(shù)據(jù)庫相比,這就像數(shù)據(jù)庫中幾個不同表。想象一下,你可以查看單行的列和值,這是跨多個不同表的單個標識符,并且能夠將它們全部存儲在一個地方:這就是超級列族。

列式數(shù)據(jù)庫的優(yōu)勢

  • 可擴展性。這是主要優(yōu)勢,這也是企業(yè)使用此類數(shù)據(jù)庫存儲大數(shù)據(jù)的主要原因之一。它能夠根據(jù)數(shù)據(jù)庫的規(guī)模分布在數(shù)百臺不同的機器上,支持大規(guī)模并行處理。這意味著它可以使用多個處理器同時處理同一組計算。
  • 壓縮。它們不僅具有無限的可擴展性,而且還擅長壓縮數(shù)據(jù),從而節(jié)省存儲空間。
  • 反應靈敏。加載時間最短,查詢執(zhí)行速度快,這是因為它們被設計為支持大數(shù)據(jù),并適用于分析。

列式數(shù)據(jù)庫的缺點

  • 在線事務處理。對于在線事務處理,這些數(shù)據(jù)庫不是很高效,不如在線分析處理。這意味著它們不太擅長更新事務,但旨在分析它們。這就是為什么我們看到這些數(shù)據(jù)庫用于保存業(yè)務分析所需的數(shù)據(jù),而關系數(shù)據(jù)庫在后端存儲數(shù)據(jù)。
  • 增量數(shù)據(jù)加載。如上所述,通常列式數(shù)據(jù)庫用于分析并且可以快速檢索數(shù)據(jù),即使在處理復雜查詢時也是如此,因為數(shù)據(jù)在列中緊密聯(lián)系。雖然增量數(shù)據(jù)加載并非不可能,但列式數(shù)據(jù)庫并不能以最有效的方式執(zhí)行它們。首先需要掃描列以識別正確的行,然后進一步掃描以定位需要覆蓋的修改數(shù)據(jù)。
  • 特定于行的查詢。正如上面提到的缺點,這一切都歸結為同一問題,即為正確的目的使用正確類型的數(shù)據(jù)庫。對于特定于行的查詢,你會引入額外的步驟,即掃描列以識別行,然后定位要檢索的數(shù)據(jù)。訪問分散在多列中的單個記錄需要很多時間,而訪問單個列中的分組記錄會更快。頻繁的行特定查詢可能會降低列式數(shù)據(jù)庫的速度,從而導致性能問題,這無疑違背該數(shù)據(jù)庫的設計初衷,它是專為幫助快速獲取所需信息而設計。

NoSQL數(shù)據(jù)庫主要是為滿足特定目的而設計,不應用作一般類型的存儲。寬列數(shù)據(jù)庫是列式而不是行式,它主要用于存儲和查詢大數(shù)據(jù)。該類型中有很多不同的數(shù)據(jù)庫可用,在尋找最合適的數(shù)據(jù)存儲解決方案時,你應該探索它們的功能。

 

責任編輯:趙寧寧 來源: TechTarget中國
相關推薦

2019-07-08 10:36:34

數(shù)據(jù)庫WebNoSQL

2024-02-02 10:51:53

2023-03-05 16:25:38

NoSQL數(shù)據(jù)庫

2018-09-13 14:51:43

NoSQL數(shù)據(jù)庫大數(shù)據(jù)

2011-10-09 09:38:03

OracleNoSQL

2015-10-22 10:44:50

2015-10-22 10:52:34

NoSQL數(shù)據(jù)庫鍵值型數(shù)據(jù)庫文檔型數(shù)據(jù)庫

2019-03-20 15:59:11

NoSQLRedis數(shù)據(jù)庫

2010-04-01 09:45:38

NoSQL

2011-07-19 09:08:50

JavaNoSQL

2024-03-28 09:00:00

NoSQL數(shù)據(jù)庫

2010-08-31 14:04:49

DB2驅動

2022-07-28 09:02:41

文件存儲系統(tǒng)

2011-03-15 14:54:08

NoSQL

2011-07-13 09:58:15

HBase

2019-07-23 11:41:45

數(shù)據(jù)庫SQLDocker

2011-05-16 10:29:44

HandlerSockNoSQL

2011-04-14 11:14:21

OracleNoSQLMySQL

2011-03-25 14:40:29

Trinity數(shù)據(jù)庫

2014-02-27 10:08:33

NoSQL
點贊
收藏

51CTO技術棧公眾號