NOSQL非關聯式資料庫。

2021-07-09 02:24:27 字數 2003 閱讀 2174

nosql:

not only sql,而不是no sql。

nosql,泛指非關係型的資料庫。隨著網際網路

web2.0

**的興起,傳統的關聯式資料庫在應付web2.0**,特別是超大規模和高併發的

sns型別的web2.0純

動態**已經顯得力不從心,暴露了很多難以克服的問題,而非關係型的資料庫則由於其本身的特點得到了非常迅速的發展。nosql資料庫的產生就是為了解決大規模資料集合多重資料種類帶來的挑戰,尤其是大資料應用難題。

非關聯式資料庫有四大類:

一、鍵值(

key-value

)儲存資料庫

這一類資料庫主要會使用到乙個雜湊表,這個表中有乙個特定的鍵和乙個指標指向特定的資料。key/value模型對於it系統來說的優勢在於簡單、易部署。但是如果dba只對部分值進行查詢或更新的時候,key/value就顯得效率低下了。 舉例如:tokyo cabinet/tyrant, redis, voldemort, oracle bdb.

二、列儲存資料庫。

這部分資料庫通常是用來應對分布式儲存的海量資料。鍵仍然存在,但是它們的特點是指向了多個列。這些列是由列家族來安排的。如:cassandra, hbase, riak.

三、文件型資料庫

文件型資料庫的靈感是來自於lotus notes辦公軟體的,而且它同第一種鍵值儲存相類似。該型別的資料模型是版本化的文件,半結構化的文件以特定的格式儲存,比如json。文件型資料庫可 以看作是鍵值資料庫的公升級版,允許之間巢狀鍵值。而且文件型資料庫比鍵值資料庫的查詢效率更高。如:couchdb, mongodb. 國內也有文件型資料庫sequoiadb,已經開源。

四、圖形(graph)資料庫

圖形結構的資料庫同其他行列以及剛性結構的sql資料庫不同,它是使用靈活的圖形模型,並且能夠擴充套件到多個伺服器上。nosql資料庫沒有標準的查詢語言(sql),因此進行資料庫查詢需要制定資料模型。許多nosql資料庫都有rest式的資料介面或者查詢api。 如:neo4j, infogrid, infinite graph.

因此,我們總結nosql資料庫在以下的這幾種情況下比較適用:1、資料模型比較簡單;2、需要靈活性更強的it系統;3、對資料庫效能要求較高;4、不需要高度的資料一致性;5、對於給定key,比較容易對映複雜值的環境。

挑戰:

儘管大多數nosql資料儲存系統都已被部署於實際應用中,但歸納其研究現狀,還有許多挑戰性問題。

1.已有key-value資料庫產品大多是面向特定應用自治構建的,缺乏通用性;

2.已有產品支援的功能有限(不支援事務特性),導致其應用具有一定的侷限性;

3.已有一些研究成果和改進的nosql資料儲存系統,但它們都是針對不同應用需求而提出的相應解決方案,如支援組內事務特性、彈性事務等,很少從全域性考慮系統的通用性,也沒有形成系列化的研究成果;

4.缺乏類似關聯式資料庫所具有的強有力的理論(如armstrong公理系統)、技術(如成熟的基於啟發式的優化策略、兩段封鎖協議等)、標準規範(如sql語言)的支援。

目前,hbase資料庫時安全特性最完善的nosql資料庫產品之一,而其他的nosql資料庫多數沒有提供內建的安全機制,但隨著nosql的發展,越來越多的人開始意識到安全的重要,部分nosql產品逐漸開始提供一些安全方面的支援。

隨著雲計算、網際網路等技術的發展,大資料廣泛存在,同時也呈現出了許多雲環境下的新型應用,如社交網路網、移動服務、協作編輯等。這些新型應用對海量資料管理或稱雲資料管理系統也提出了新的需求,如事務的支援、系統的彈性等。同時雲計算時代海量資料管理系統的設計目標為可擴充套件性、彈性、容錯性、自管理性和「強一致性」。目前,已有系統通過支援可隨意增減節點來滿足可擴充套件性;通過副本策略保證系統的容錯性;基於監測的狀態訊息協調實現系統的自管理性。「彈性」的目標是滿足pay-per-use 模型,以提高系統資源的利用率。該特性是已有典型nosql資料庫系統所不完善的,但卻是雲系統應具有的典型特點;「強一致性」主要是新應用的需求

非關聯式資料庫NoSql的分類講解

典型應用 內容快取,主要用於處理大量資料的高訪問負載。資料模型 一系列鍵值對 優勢 快速查詢 劣勢 儲存的資料缺少結構化 相關產品 cassandra,hbase,riak 典型應用 分布式的檔案系統 資料模型 以列簇式儲存,將同一列資料存在一起 優勢 查詢速度快,可擴充套件性強,更容易進行分布式擴...

關聯式資料庫與非關聯式資料庫

關係型資料庫,是指採用了關係模型來組織資料的資料庫。關係模型是在1970年由ibm的研究員e.f.codd博士首先提出的,在之後的幾十年中,關係模型的概念得到了充分的發展並逐漸成為主流資料庫結構的主流模型。簡單來說,關係模型指的就是二維 模型,而乙個關係型資料庫就是由二維表及其之間的聯絡所組成的乙個...

關聯式資料庫與非關聯式資料庫

關係型資料庫,是指採用了關係模型來組織資料的資料庫。關係模型是在1970年由ibm的研究員e.f.codd博士首先提出的,在之後的幾十年中,關係模型的概念得到了充分的發展並逐漸成為主流資料庫結構的主流模型。簡單來說,關係模型指的就是二維 模型,而乙個關係型資料庫就是由二維表及其之間的聯絡所組成的乙個...