1. 程式人生 > >redis做快取優勢

redis做快取優勢

1、 Redis簡介
redis是Nosql資料庫中使用較為廣泛的非關係型記憶體資料庫,redis內部是一個key-value儲存系統。它支援儲存的value型別相對更多,包括string(字串)、list(連結串列)、set(集合)、zset(sorted set –有序集合)和hash(雜湊型別,類似於Java中的map)。Redis基於記憶體執行並支援持久化的NoSQL資料庫,是當前最熱門的NoSql資料庫之一,也被人們稱為資料結構伺服器。
2、Redis有三個主要特點,使它優越於其它鍵值資料儲存系統 -

Redis將其資料庫完全儲存在記憶體中,僅使用磁碟進行持久化。
與其它鍵值資料儲存相比,Redis有一組相對豐富的資料型別。
Redis可以將資料複製到任意數量的從機中。

3、Redis的一些優點。

異常快 - Redis非常快,每秒可執行大約110000次的設定(SET)操作,每秒大約可執行81000次的讀取/獲取(GET)操作。
支援豐富的資料型別 - Redis支援開發人員常用的大多數資料型別,例如列表,集合,排序集和雜湊等等。這使得Redis很容易被用來解決各種問題,因為我們知道哪些問題可以更好使用地哪些資料型別來處理解決。
操作具有原子性 - 所有Redis操作都是原子操作,這確保如果兩個客戶端併發訪問,Redis伺服器能接收更新的值。
多實用工具 - Redis是一個多實用工具,可用於多種用例,如:快取,訊息佇列(Redis本地支援釋出/訂閱),應用程式中的任何短期資料,例如,web應用程式中的會話,網頁命中計數等。

4、Redis與其他鍵值儲存系統

Redis是鍵值資料庫系統的不同進化路線,它的值可以包含更復雜的資料型別,可在這些資料型別上定義原子操作。

Redis是一個記憶體資料庫,但在磁碟資料庫上是持久的,因此它代表了一個不同的權衡,在這種情況下,在不能大於儲存器(記憶體)的資料集的限制下實現非常高的寫和讀速度。

記憶體資料庫的另一個優點是,它與磁碟上的相同資料結構相比,複雜資料結構在記憶體中儲存表示更容易操作。 因此,Redis可以做很少的內部複雜性。

5、 nosql資料庫的優勢
1)易擴充套件
這些型別的資料儲存不需要固定的模式,無需多餘的操作就可以進行橫向的擴充套件。相對於關係型資料庫可以減少表和欄位特別多的情況。也無型之間在架構的層面上帶來了可擴充套件的能力
2)大資料量提高效能
3)多樣靈活的資料模型

6、 NoSql的應用
1) 大資料時代淘寶、微信、以及微博等都廣泛的使用了redis資料庫,將一些固定不變的資料例如學校,區域等固定的資訊儲存在關係型資料庫中。然後對於經常變化的資料例如淘寶每個節日都會有比較熱門的搜尋顯示在搜尋框,當節日過去關鍵字自動刪除,為了便於管理,可以將這些資料儲存在redis資料庫中,並設定過期時間,到達時間就自動刪除。
2)為了緩解資料庫壓力,微博首先將傳送的微博儲存到redis資料庫,自己可以立即檢視到,然後將記憶體中的資料同步到關係型資料庫。