Redis 它是什麼?它用來做什麼?它的優勢與短板如何?
阿新 • • 發佈:2019-02-20
1.Redis 是什麼?
2 Redis用來做什麼?
3 Redis的優點?
4 Redis的缺點?
閱讀目的: 對什麼是記憶體型資料庫有概念性的認知。?
Redis 是什麼?
通常而言目前的資料庫分類有幾種,包括 SQL/NSQL,,關係資料庫,鍵值資料庫等等 等,分類的標準也不以,Redis本質上也是一種鍵值資料庫的,但它在保持鍵值資料庫簡單快捷特點的同時,又吸收了部分關係資料庫的優點。從而使它的位置處於關係資料庫和鍵值數 據庫之間。Redis不僅能儲存Strings型別的資料,還能儲存Lists型別(有序)和Sets型別(無序)的資料,而且還能完成排序(SORT) 等高階功能,在實現INCR,SETNX等功能的時候,保證了其操作的原子性,除此以外,還支援主從複製等功能。
更為詳細的描述請參考如下:
Redis官方也同樣提供了一個名為Retwis的專案程式碼,可以對照著官方學習。
2 Redis用來做什麼?
通常侷限點來說,Redis也以訊息佇列的形式存在,作為內嵌的List存在,滿足實時的高併發需求。而通常在一個電商型別的資料處理過程之中,有關商品,熱銷,推薦排序的佇列,通常存放在Redis之中,期間也包擴Storm對於Redis列表的讀取和更新。
3 Redis的優點
效能極高 – Redis能支援超過 100K+ 每秒的讀寫頻率。
豐富的資料型別 – Redis支援二進位制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 資料型別操作。
原子 – Redis的所有操作都是原子性的,同時Redis還支援對幾個操作全並後的原子性執行。
豐富的特性 – Redis還支援 publish/subscribe, 通知, key 過期等等特性。
4 Redis的缺點
是資料庫容量受到實體記憶體的限制,不能用作海量資料的高效能讀寫,因此Redis適合的場景主要侷限在較小資料量的高效能操作和運算上。
總結: Redis受限於特定的場景,專注於特定的領域之下,速度相當之快,目前還未找到能替代使用產品。