「nosql指的是非關係型的資料庫。nosql也稱作not only sql的縮寫,是對不同於傳統的關係型資料庫的資料庫管理系統的統稱。
為什麼要有nosql?
nosql在記憶體中儲存資料,都具有非常高的讀寫效能,尤其在大資料容量下,同樣表現優秀。這得益於它的無關係性,資料庫的結構簡單。
一般mysql使用query cache,每次表的更新cache 就失效,是一種大粒度的cache,在針對web2.0的互動頻繁的應用,cache效能不高。而nosql的cache是記錄級的,是一種細粒度的cache,所以nosql在這個層面上來說就要效能高很多了
分類example舉例
典型應用場景
資料模型
優點缺點
鍵值對tokyo,cabinet/tyrant,redis,voldemort,oracle bdb
記憶體快取,主要用於處理大量資料的高訪問負載,也用於一些日誌系統等等
key指向value的鍵值對,通常用hash table來實現
查詢速度快
資料無結構化,通常只被當做字串或二進位制資料
列儲存資料庫
cassandra,hbase,riak
分布式的檔案系統
以列簇式儲存,將同列資料存在一起
查詢速度快,可擴充套件性強,更容易進行分布式擴充套件
功能相對侷限
文件型資料庫
couchdb,mongodb
web應用
key-value
資料結構要求不嚴格,表結構可變
查詢效能不高,缺乏統一的查詢語法
圖形資料庫
neo4j,infogrid,infinite graph
社交網路,推薦系統等
圖結構利用圖結構相關演算法
很多時候需要對整個圖做計算
cap理論是指在分布式儲存系統中,最多只能實現上述的兩點,由於網路硬體延遲丟包,所以p(分割槽容錯性)是我們所必須要實現的
**一般實現ap
而redis、mongodb則是實現cp
由多台計算機和通訊的軟體元件通過計算機網路連線組成。分布式系統是建立在網路之上的軟體系統,正是因為這樣,所以分布式系統具有高度的內聚性和透明性。
簡單來說分布式就是不同的多型伺服器部署不同的服務模組
不同的多台伺服器部署相同的服務模組,通過分布式排程軟體進行統一的排程。
NoSQL是什麼意思
今天小編帶大家了解下nosql,從廣義上說,nosql指的是非關係型資料庫,說的其實不是不用sql,而是不只是sql not only sql nosql旨在打破關係型資料庫的統治格局,解決關係型資料庫解決不了的問題。各個nosql資料庫都有乙個共同的特點,就是能儲存海量的資料。nosql沒有複雜的...
為什麼使用nosql
工作中遇到的挑戰 1,高併發讀寫 web2.0 資料庫併發負載非常高,往往達到每秒上萬次的讀寫請求 2,高容量儲存和高效儲存 web2.0 通常需要在後台資料庫中儲存海量資料,如何儲存海量資料並進行高效的查詢往往是乙個挑戰 3,高擴充套件性和高可用性 隨著系統的使用者量和訪問量與日俱增,需要資料庫能...
你是什麼就是什麼!
不管到了什麼樣的年紀,我們都很難放棄對外表的一些執著吧。我一直要到遇見了乙個很特別很特別的人,從他身上,我才真正的懂了 外表之於乙個人的真正意義是什麼 去年,我買了新房子,本來是想委託我的小學同學幫我做室內設計,但是因為一些因素,他推薦了他口中比他更厲害的大師級設計師哥哥給我,他說大哥一直都做大飯店...