Redis各種資料結構記憶體占用測試

2022-03-21 22:08:03 字數 3238 閱讀 2372

啟動時:(redis為空)

插入資料量都為100w(100w個key或者list中100w個值,或者1000個key,每個key中1000個值)

key value如下

設定:

##ziplist中允許的條目個數

hash-max-ziplist-entries 512

##ziplist中每個條目(k-v)的v允許的最大位元組數

hash-max-ziplist-value 64

##如果達到閥值,則重構為hashtable

# memory

used_memory:21946472

used_memory_human:20.93m

used_memory_rss:25464832

used_memory_peak:183714248

used_memory_peak_human:175.20m

used_memory_lua:31744

mem_fragmentation_ratio:1.16

mem_allocator:jemalloc-3.2.0

結論:100w資料在key和value都在10byte左右時,占用空間100m左右,若使用hash的壓縮列表特性,記憶體占用減少到1/5.

Redis 各種資料結構記憶體占用測試

啟動時 redis為空 插入資料量都為100w 100w個key或者list中100w個值,或者1000個key,每個key中1000個值 key value如下 設定 ziplist中允許的條目個數 hash max ziplist entries 512 ziplist中每個條目 k v 的v允...

Redis入門 各種資料結構

string 型別 儲存形式 以 key value 形式存在 常用命令 set get del incr incr setnx list 型別 儲存形式 以 key 集合 形式存在 常用命令 rpush lpush llen lrange lpop rpop set 型別 儲存形式 以 key 集...

redis 各種資料結構的encoding實現

redis 各種資料結構的encoding實現 redis type命令實際返回的就是當前鍵的資料結構型別,它們分別是 string 字串 hash 雜湊 list 列表 set 集合 zset 有序集合 但這些只是redis對外的資料結構。我們可以通過object encoding命令查詢內部編碼...