redis中5種資料類型介紹

來源:互聯網
上載者:User


redis和memcached兩種緩衝,個人覺得redis更好用,因為它不僅提供了豐富的資料類型,還能保證資料的持久性,下面就來簡單的介紹一下redis中常用的幾種資料類型。

1. 字串類型(string)

這是redis中最基本的類型,也是最常用的類型,跟memcached一樣,即一個key對應一個值這種。操作也很簡單,常用操作命令有get、set、del等。

2. 鏈表類型(list)

鏈表類型有點類似於程式設計語言中的數組一樣,可以用一個key存一組資料進去。其實list類型就是一個雙向鏈表,通過lpush、lpop、rpush、rpop這四個命令來向鏈表的頭部插入、移除、尾部插入、移除,這使得list即可以用作棧,也可以用作隊列。如下圖所示的情景:
redis中list隊列

3. 無序集合類型(set)

redis中的set是string類型的無序集合,set元素最大可以包含2的32次方-1個元素。利用set集合類型,我們可以快速取出n個key之間的並集、交集、差集等,從而輕鬆解決mysql等資料庫不容易實現這種運算的缺陷。應用情境:取出兩個QQ號中的共同的好友數。

4. 有序集合類型(sorted set)

和set一樣,sorted set也是string類型元素的集合,是一個沒有重複元素的字串集合。因為元素是有序的,所以使用有序集合你可以以非常快的速度(O(log(N)))添加,刪除和更新元素,它也很擅長排序。應用情境:擷取所有使用者投票數最高的前10名,等等。

5. 雜湊類型(hash)

hash資料類型儲存的資料與mysql資料庫中儲存一條記錄極為相似,其儲存了欄位和欄位值的映射,但欄位值只能是字串,不支援其他類型。每一個雜湊可以儲存超過2的32次方-1個欄位-值對。應用情境:儲存使用者的基本資料,等等。

總結:只有熟練掌握redis各種資料類型的特點之後,才能更好的應用到實際項目中。雖然redis的效率非常高,但是我們還是得非常清楚的理解每種資料類型適合的應用情境,這樣才能將redis的優勢發揮到極致

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.