redis學習 sds資料型別

2022-09-02 03:06:10 字數 564 閱讀 7028

今天開始了redis的學習,本來想直接從原始碼看起的,不過看到有篇對redis介紹的基礎教程 《

redis 設計與實現(第一版)》

於是決定從這個開始入門。

1.資料型別定義

typedef char *sds;

struct sdshdr ;

2.重新計算新的長度

newlen = sdshdr.len + required_len

if newlen < sds_max_prealloc:

newlen *= 2

else:

newlen += sds_max_prealloc

3. 關於這種分配策略會浪費記憶體嗎?

操作的鍵很多, 而字串的體積又很大的話, 那可能就需要修改 redis 伺服器, 讓它定時釋放一些字串鍵的預分配空間, 從而更有效地使用記憶體。

sds 會為追加操作進行優化:加快追加操作的速度,並降低記憶體分配的次數,代價是多占用了一些記憶體,而且這些記憶體不會被主動釋放。

redis 學習(一 redis資料型別)

一 reids資料型別 1.string 存 set key value 取 get key 2.hash 存 hmset key field value 取 hget key field 3.list 新增 lpush key value 遍歷 lrange key start stop redi...

redis學習筆記 redis資料型別

泛指非關係型的資料庫。隨著網際網路web2.0 的興起,傳統的關聯式資料庫在應付web2.0 特別是超大規模和高併發的sns型別的web2.0純動態 已經顯得力不從心,暴露了很多難以克服的問題,而非關係型的資料庫則由於其本身的特點得到了非常迅速的發展。nosql資料庫的產生就是為了解決大規模資料集合...

Redis學習 String資料型別

redis最初就是被定義為快取使用的,快取中放哪些業務資料呢?1.原始業務功能設計 2.運營平台監控到的熱點資料 3.高頻 複雜的統計資料 投票排行榜 4.附加功能 string型別的基本操作 string型別的擴充套件操作 場景 分表主表如何保證唯一,redis可以實現。string作為數值操作注...