儲存的時候key和value都是string,value支援string、hash、list、set、zset等資料結構。 redis內部的key-value通過乙個redisobject物件來儲存,type表示value的型別(string等),encoding表示儲存方式(raw/int等)
結構:key-value
常用方法:set、setex、setnx(setifnotexist)、get、incr/decr
使用場景:存task、分布式鎖、存int值做自增計數(incr具有原子性)
結構:key:[field-value; field-value;]對映關係,底層用hashmap儲存的資料
常用方法:hset(key, field, value); hget/hexists/hdel(key, field); hgetall(key)
使用場景:存客服的會話list(field會話key,value會話詳情)、對工單的星標型別(field工單id,value星標型別)
結構:key:[value; value;] 有序可重複,底層是雙向鍊錶實現的。頭尾新增元素快,查詢慢。
常用方法:lpush/rpush增、lpop/rpop刪、lset(設定索引位置的值)、查lrange(key,start,end):可為負數-1表示鍊錶尾部-2表示倒數第二個。 l是左邊隊頭,r是右邊隊尾。
使用場景:做簡單的訊息佇列功能,可以確保先後順序;利用lrange做分頁功能;
結構:key:[value1; value2;] 無序,不可重複。 底層用value為null的hashmap儲存的
常用方法:sadd增、srem刪、sismember/smembers查;
使用場景:需要做資料去重時。
結構:key:[value-score; value-score] 底層使用hashmap和跳躍表(skiplist)來保證資料的儲存和有序。
常用方法:zadd增、zrem刪、zrange查
使用場景:做排序、取topk、範圍查詢等。
Redis資料型別及使用場景
wqtech閱讀 2936 摘要 redis相比其它的kv資料庫,其一大特點是支援豐富的資料型別.它一共支援5種資料型別,下面逐一介紹這5種資料型別及其使用場景.redis相比其它的kv資料庫,其一大特點是支援豐富的資料型別。它一共支援5種資料型別,下面逐一介紹這5種資料型別及其使用場景和內部實現方...
Redis資料型別及使用場景
redis支援常見的資料型別,現在是被廣泛用在各大公司的內部,它可以做的東西很多,不過要先了解下他提供的基本資料型別與常見操作。接下來一起看看把。最基礎的資料型別,首先key是字串型別,其它的資料型別都是在字串的基礎之上構建的。set命令 批量設定和獲取命令,在操作多個key的時候可以節省網路傳輸時...
Redis資料型別及使用場景
redis 除了這 5 種資料型別之外,還有 bitmaps hyperloglogs streams 等。這是最簡單的型別,就是普通的 set 和 get,做簡單的 kv 快取。set college szu 複製 這個是類似 map 的一種結構,這個一般就是可以將結構化的資料,比如乙個物件 前提...