NoSql的四大分類
阿新 • • 發佈:2021-08-23
NoSql的四大分類
KV鍵值對:
- 新浪:Redis
- 美團:Redis + Tair
- 阿里、百度:Redis + memecache
文件型資料庫(bson格式和json一樣):
- MongoDB (一般必須要掌握)
- MongoDB是一個基於分散式檔案儲存的資料庫,C++編寫,主要用來處理大量的文件!
- MongoDB是一個介於關係型資料庫和非關係型資料庫中的中間產品!MongoDB是非關係型資料庫中功能最豐富,最像關係型資料庫的!
- ConthDB
列儲存資料庫
- HBase
- 分散式檔案系統
圖關係資料庫
- 他不是存圖形,放的是關係,比如:朋友圈,社交網路,廣告推薦!
- Neo4j,InfoGrid;
四者對比
分類 | 舉例 | 典型應用場景 | 資料模型 | 優點 | 缺點 |
---|---|---|---|---|---|
鍵值(key-value) | Tokyo Cabint/Tyrant,Redis,Voldemort,Oracle BDB | 內容快取,主要用於處理大量資料的高訪問負載,也用於一些日誌系統等等。 | Key指向Value的鍵值對,通常用hash table來實現 | 查詢速度快 | 資料五結構化,通常被當作字串或者二進位制資料 |
列儲存資料庫 | Cassandra,HBase,Rlak | 分散式的檔案系統 | 以列簇式儲存,將同一列資料存放在一起 | 查詢速度快,可擴充套件性強,更容易進行分散式擴充套件 | 功能相對侷限 |
文件型資料庫 | CouchDB,MongoDB | Web應用(與Key-Value類似,Value是結構化的,不同的是資料庫能夠了解Value的內容) | Key-Value對應的鍵值對,Value為結構化資料 | 資料結構要求不嚴格,表結構可變,不需要像關係型資料庫一樣需要預先定義表結構 | 查詢效能不高,而且缺乏統一的查詢語法。 |
圖形(Graph)資料庫 | Neo4j,InfoGrid,Infinite Graph | 社交網路,推薦系統等。專注於構建關係圖譜 | 圖結構 | 利用圖結構相關演算法。比如最短路徑定址,N度關係查詢等 | 很多時候需要對整個圖做計算才能得出需要的資訊,而且這種結構不太好做分散式的叢集方案。 |
敬畏之心可以使人進步!