redis資料結構

2021-09-28 19:07:32 字數 552 閱讀 9511

資料結構有:string hash list set zset bitmaps hypeloglogs geospatial stream

string資料結構:能儲存字串、整數、浮點數

embstr 和 raw 的區別?

embstr 的使用只分配一次記憶體空間(因為 redisobject 和 sds 是連續的),而 raw

需要分配兩次記憶體空間(分別為 redisobject 和 sds 分配空間)。

因此與 raw 相比,embstr 的好處在於建立時少分配一次空間,刪除時少釋放一次

空間,以及物件的所有資料連在一起,尋找方便。

而 embstr 的壞處也很明顯,如果字串的長度增加需要重新分配記憶體時,整個

redisobject 和 sds 都需要重新分配空間,因此 redis 中的 embstr 實現為唯讀,所以對key操作後,就會轉換成raw。

Redis資料結構

字典 dict 是redis裡最核心的資料結構,正如其全稱remote dictionary service所說,redis其實就是乙個字典服務,字典以key value的形式呈現給使用者,key是簡單的字串,而value可以是各種資料結構,比如字串 string 鍊錶 list 集合 set 排序...

Redis 資料結構

最近接觸到了redis的使用,借這個機會深入的了解一下redis的實現和設計原理。下面先介紹一下redis底層所用到的資料結構。redis的實現幾乎都是基於下面的幾個資料結構之上的。struct sdshdr struct listnode struct list struct dictentry ...

redis 資料結構

今天學習了redis的列表型別 lpush ltrim lrange lpush mylist content ltrim 0,99 lrange 0,1 lrange 兩個引數 分別代表第乙個元素和最後乙個元素 redis的列表型別,可以用來做訊息佇列 使用乙個程序 用lpush命名作為生產者 使...