1. 程式人生 > >nosql資料庫:mongodb,redis,memcached,其優缺點和使用應用場景?

nosql資料庫:mongodb,redis,memcached,其優缺點和使用應用場景?

1.mongodb

(1)是文件型的非關係型資料庫,使用bson結構。其優勢在於查詢功能比較強大,能儲存海量資料,缺點是比較消耗記憶體

(2)一般可以用來存放評論等半結構化資料,支援二級索引。 適合儲存json型別資料,不經常變化。

(3)舉例:

a.網站資料:非常適合實時的插入、更新、查詢;

b.快取:其搭建的持久化快取層可以避免下層的資料來源過載;

c.用於物件及JSON資料的儲存:Mongo 的BSON 資料格式非常適合文件化格式的儲存及查詢;

d.高伸縮性的場景:Mongo 非常適合由數十或數百臺伺服器組成的資料庫;

e.不適合銀行或會計系統;

f.常用場景


2.redis

(1)是記憶體型資料庫,資料儲存在記憶體中,通過tcp直接存取,優勢是讀寫效能高

(2)redis是記憶體型KV資料庫(鍵值儲存資料庫,其資料按照鍵值對的形勢進行組織、索引、儲存),不支援二級索引,支援list,set等多種

資料格式。適合儲存全域性變數,適合讀多寫少的業務場景。適合

(3)舉例:(資料統計)

比如微信token每兩小時重新整理一次,就比較適合用redis儲存,讀也比較方便;線上遊戲排行榜;計時達到一定時間後顯示相關廣;按照使用者投票和時間排序,更新新聞;統計

在某段特點時間裡有多少特定使用者訪問了某個特定資源,統計哪些特定使用者訪問了某篇的文

章;

(4)Redis能夠替代memcached,讓你的快取從只能儲存資料變得能夠更新資料。

3.memcached是記憶體型資料庫,可以做叢集,可以使用多核。Redis能夠替代memcached。