面試官:Redis有幾種資料型別,詳細說一下每種資料型別的使用場景
分析
是不是覺得這個問題很基礎,其實我也這麼覺得。然而根據面試經驗發現,至少百分八十的人答不上這個問題。建議,在專案中用到後,再類比記憶,體會更深,不要硬記。基本上,一個合格的程式設計師,五種型別都會用到。
回答
一共五種
(一)String
這個其實沒啥好說的,最常規的set/get操作,value可以是String也可以是數字。一般做 一些複雜的計數功能的快取。
(二)list
使用List的資料結構,可以 做簡單的訊息佇列的功能。另外還有一個就是,可以利用lrange命令, 做基於redis的分頁功能,效能極佳,使用者體驗好。
(三)hash
這裡value存放的是結構化的物件,比較方便的就是操作其中的某個欄位。博主在做 單點登入的時候,就是用這種資料結構儲存使用者資訊,以cookieId作為key,設定30分鐘為快取過期時間,能很好的模擬出類似session的效果。
(四)set
因為set堆放的是一堆不重複值的集合。所以可以做
全域性去重的功能。為什麼不用JVM自帶的Set進行去重?因為我們的系統一般都是叢集部署,使用JVM自帶的Set,比較麻煩,難道為了一個做一個全域性去重,再起一個公共服務,太麻煩了。
另外,就是利用交集、並集、差集等操作,可以
計算共同喜好,全部的喜好,自己獨有的喜好等功能。
(五)sorted set
sorted set多了一個權重引數score,集合中的元素能夠按score進行排列。可以做 排行榜應用,取TOP N操作。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946007/viewspace-2655964/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Redis多種資料型別以及使用場景Redis資料型別
- Redis三種特殊資料型別API詳解附帶詳細使用場景Redis資料型別API
- redis 五種資料型別和使用場景梳理!Redis資料型別
- Redis五種資料型別應用場景Redis資料型別
- 面試官問:ZooKeeper 有幾種節點型別?別再說 4 種啦!面試型別
- redis的五種資料型別及應用場景Redis資料型別
- 面試官問我redis資料型別,我回答了8種面試Redis資料型別
- [Redis] 淺談Redis內的幾種資料型別Redis資料型別
- 2 萬字 + 20張圖| 細說 Redis 九種資料型別和應用場景Redis資料型別
- 2 萬字 + 20張圖| 細說 Redis 九種資料型別和應用場景Redis資料型別
- Redis系列-資料型別及使用場景Redis資料型別
- Redis 的 5 種資料型別的基本使用Redis資料型別
- Redis 三種特殊資料型別Redis資料型別
- 【Redis】Redis的資料型別速查(5種基礎型別,5特殊型別)Redis資料型別
- Redis 資料型別及其使用場景 String 篇Redis資料型別
- Redis 中三種特殊的資料型別Redis資料型別
- redis資料型別及應用場景Redis資料型別
- Redis常見的5種不同的資料型別詳解Redis資料型別
- redis部署以及各種資料型別使用命令等詳解Redis資料型別
- redis的幾種型別解析Redis型別
- JS資料型別判斷的幾種方法JS資料型別
- Redis 三種特殊資料型別之 HyperloglogRedis資料型別
- Redis 三種特殊資料型別之 BitmapsRedis資料型別
- 《閒扯Redis九》Redis五種資料型別之Set型Redis資料型別
- 《閒扯Redis六》Redis五種資料型別之Hash型Redis資料型別
- 13種資料型別 - forbes資料型別ORB
- 資料型別: 資料型別有哪些?資料型別
- 資料中心代理有哪幾種型別?型別
- 面試官:JavaScript 原始資料型別 Symbol 有什麼用?面試JavaScript資料型別Symbol
- 判斷js中的資料型別的幾種方法JS資料型別
- Redis中7種集合型別應用場景Redis型別
- 資料更改事件的三種型別事件型別
- 建立一種新的資料型別資料型別
- Redis資料型別Redis資料型別
- 介面之多種返回資料型別資料型別
- Redis 五種資料型別和相關操作命令Redis資料型別
- Redis set資料型別命令使用及應用場景使用總結Redis資料型別
- String資料型別的應用場景資料型別