CGFT大數(shù)據(jù)技術(shù)原理中NoSQL的四大類型是什么?

CGFT大數(shù)據(jù)技術(shù)原理中NoSQL的四大類型是什么?今天跟著小編一起看看。

1、鍵值數(shù)據(jù)庫

鍵值數(shù)據(jù)庫(Key-Value Database)會使用一個哈希表,這個表中有一個特定的Key和一個指針指向特定的Value。Key可以用來定位Value,即存儲和檢索具體的Value。Value對數(shù)據(jù)庫而言是透明不可見的,不能對Value進行索引和查詢,只能通過Key進行查詢。

Value可以用來存儲任意類型的數(shù)據(jù),包括整型、字符型、數(shù)組、對象等。在存在大量寫操作的情況下,鍵值數(shù)據(jù)庫可以比關(guān)系數(shù)據(jù)庫取得明顯更好的性能。因為,關(guān)系數(shù)據(jù)庫需要建立索引來加速查詢,當存在大量寫操作時,索引會發(fā)生頻繁更新,由此會產(chǎn)生高昂的索引維護代價。

cgft

關(guān)系數(shù)據(jù)庫通常很難水平擴展,但是,鍵值數(shù)據(jù)庫天生具有良好的伸縮性,理論上幾乎可以實現(xiàn)數(shù)據(jù)量的無限擴容。鍵值數(shù)據(jù)庫可以進一步劃分為內(nèi)存鍵值數(shù)據(jù)庫和持久化(Persistent)鍵值數(shù)據(jù)庫。內(nèi)存鍵值數(shù)據(jù)庫把數(shù)據(jù)保存在內(nèi)存,如Memcached和Redis;持久化鍵值數(shù)據(jù)庫把數(shù)據(jù)保存在磁盤,如BerkeleyDB、Voldmort和Riak。

2、列族數(shù)據(jù)庫

列族數(shù)據(jù)庫一般采用列族數(shù)據(jù)模型,數(shù)據(jù)庫由多個行構(gòu)成,每行數(shù)據(jù)包含多個列族,不同的行可以具有不同數(shù)量的列族,屬于同一列族的數(shù)據(jù)會被存放在一起。每行數(shù)據(jù)通過行鍵進行定位,與這個行鍵對應的是一個列族,從這個角度來說,列族數(shù)據(jù)庫也可以被視為一個鍵值數(shù)據(jù)庫。列族可以被配置成支持不同類型的訪問模式,一個列族也可以被設(shè)置成放入內(nèi)存當中,以消耗內(nèi)存為代價來換取更好的響應性能。

3、文檔數(shù)據(jù)庫

在文檔數(shù)據(jù)庫中,文檔是數(shù)據(jù)庫的*小單位。雖然每一種文檔數(shù)據(jù)庫的部署都有所不同,但是,大都假定文檔以某種標準化格式封裝并對數(shù)據(jù)進行加密,同時用多種格式進行解碼,包括XML、YAML、JSON和BSON等,或者也可以使用二進制格式(如PDF、微軟Office文檔等)。

文檔數(shù)據(jù)庫通過鍵來定位一個文檔,因此可以看成鍵值數(shù)據(jù)庫的一個衍生品,而且前者比后者具有更高的查詢效率。對于那些可以把輸人數(shù)據(jù)表示成文檔的應用而言,文檔數(shù)據(jù)庫是*合適的一個文檔可以包含*復雜的數(shù)據(jù)結(jié)構(gòu),如嵌套對象,并且不需要采用特定的數(shù)據(jù)模式,每個文檔可能具有完全不同的結(jié)構(gòu)。文檔數(shù)據(jù)庫既可以根據(jù)鍵(Key)來構(gòu)建索引,也可以基于文檔內(nèi)容來構(gòu)建索引。

尤其是基于文檔內(nèi)容的索引和查詢這種能力,是文檔數(shù)據(jù)庫不同于鍵值數(shù)據(jù)庫的地方,因為,在鍵值數(shù)據(jù)庫中,值(Value)對數(shù)據(jù)庫是透明不可見的,不能根據(jù)值來構(gòu)建索引。文檔數(shù)據(jù)庫主要用于存儲并檢索文檔數(shù)據(jù),當需要考慮很多關(guān)系和標準化約束以及需要事務支持時,傳統(tǒng)的關(guān)系數(shù)據(jù)庫是更好的選擇。

4、圖形數(shù)據(jù)庫

圖形數(shù)據(jù)庫以圖論為基礎(chǔ),一個圖是一個數(shù)學概念,用來表示一個對象集合,包括頂點以連接頂點的邊。圖形數(shù)據(jù)庫使用圖作為數(shù)據(jù)模型來存儲數(shù)據(jù),完全不同于鍵值、列族和文檔數(shù)據(jù)模型,可以高效地存儲不同頂點之間的關(guān)系。圖形數(shù)據(jù)庫專門用于處理具有高度相互關(guān)聯(lián)關(guān)系的數(shù)據(jù),可以高效地處理實體之間的關(guān)系,比較適合于社交網(wǎng)絡(luò)、模式識別、依賴分析、推薦系統(tǒng)以及路徑尋找等問題。