假设我有很多(数千万)这样的键:A_1,A_2,A_3等; B_1,B_2等。值都是短的int数。现在我分别存储所有这些键,性能非常好,但是我有巨大的内存开销。没有足够的12 Gb RAM,我需要十倍以上。我想,我可以使用列表并存储类似的东西:key:A,list:[1,2,3,...]。使用这种方法可以赢得一些内存吗?
答案 0 :(得分:6)
您应该尝试使用Redis Hash数据结构
like HSET superkey key value
具有少量字段的哈希键使用较少的内存,然后使用几个不同的键。 小哈希内部使用ziplist,在搜索中内存效率更高,速度更快
在选择方法之前,您应该看一些链接
尽可能使用哈希
在Redis中存储数亿个简单的键值对
Tumbler: Storing-hundreds-of-millions-of-simple-key-value-pairs