不同類型數據庫應用場景對比


數據庫使用系列專欄:數據庫使用系列文章


 

目錄

1 NoSql與關係型數據庫應用場景對比

2 非關係型數據庫(NoSql)應用場景對比


1 NoSql與關係型數據庫應用場景對比

Nosql

1.適合存儲非結構化數據存儲,數據量且不可預期。如:評論,文章

2.排行榜數據獲取,實時更新的數據。如:遊戲榜排名,用戶投票

3.限時搶購活動。如:淘寶搶購活動

4.反垃圾系統。如:敏感詞

5.消息實時推送。如:微博推送

6.緩存。如:熱點數據

SQL

1.適合存儲結構化數據。如:賬號,地址

2.事務性,數據一致性。如:銀行

3.複雜數據邏輯處理,需要JOIN關聯

2 非關係型數據庫(NoSql)應用場景對比

分類 典型產品 典型應用場景 數據模型 優點 缺點
鍵值(key-value)存儲

Redis 

Memcached

內容緩存,主要用於處理大量數據的高訪問負載,也用於一些日誌系統等等 Key指向Value的鍵值對,通常用hash  table來實現 查找速度快 數據無結構化,通常只被當作字符串或者二進制數據
列存儲(Column stores) HBase 分佈式的文件系統 以列簇式存儲,將同一列數據存在一起 查找速度快,可擴展性強,更容易進行分佈式擴展 功能相對侷限
文檔型(Document stores)數據庫

MongoDb

CouchDB

Web應用(與Key-Value類似,Value是結構化的,不同的是數據庫能夠了解Value的內容) Key-Value對應的鍵值對,Value爲結構化數據 數據結構要求不嚴格,表結構可變,不需要像關係型數據庫一樣需要預先定義表結構 查詢性能不高,而且缺乏統一的查詢語法
圖形(Graph)數據庫 Neo4J 社交網絡,推薦系統等。專注於構建關係圖譜 圖結構 利用圖結構相關算法。比如最短路徑尋址,N度關係查找等 很多時候需要對整個圖做計算才能得出需要的信息,且這種結構不太好做分佈式的集羣方案

不同數據庫應用場景需要參考具體數據庫產品特性,本文根據以往市場使用情況列舉了部分數據庫的典型應用場景。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章