国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

NoSQL數據庫類(lèi)型說(shuō)明:列式數據庫

發(fā)布時(shí)間:2021-10-10 21:22 來(lái)源:TechTarget中國 閱讀:0 作者:TechTarget中國 欄目: 數據庫 歡迎投稿:712375056

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

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

這類(lèi)數據庫的鍵名和列名不是固定的。同一列族或列簇中的列可以具有不同的行數,并且可以容納不同類(lèi)型的數據和名稱(chēng)。

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

列式數據庫如何工作

關(guān)系型數據庫有固定的模式,它們具有行和列的表。寬列數據庫具有相似但不同的架構。它們也有行和列。但是,它們不是固定在表中,而是具有動(dòng)態(tài)模式。每列單獨存儲。如果存在相似(相關(guān))的列,則將它們關(guān)聯(lián)到列族中,然后將這些列族與其他列族分開(kāi)存儲。

行鍵是每個(gè)列族的第一列,作為行的標識符。此外,之后的每一列都有一個(gè)列鍵(名稱(chēng))。它標識行中的列,從而實(shí)現對列的查詢(xún)。值和時(shí)間戳出現在列鍵之后,說(shuō)明數據何時(shí)被輸入或修改。

與每一行相關(guān)的列數或其名稱(chēng)可能會(huì )有所不同。換句話(huà)說(shuō),并不是一個(gè)列族的每一列都有相同的行數。事實(shí)上,即使它們可能共享它們的名字,每一列都包含在一行中并且不會(huì )跨越所有行。

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

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

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

列族類(lèi)型

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

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

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

列式數據庫的缺點(diǎn)

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

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

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

亚洲精品成人福利网站| 中文字幕无码成人免费视频| 无码国产精成人午夜视频不卡| 俺也来俺也去俺也射| 丰满白嫩大屁股ASS| 国产乱妇乱子在线视频|