Redis---set
Posted crossdunk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis---set相关的知识,希望对你有一定的参考价值。
最多存储2^32-1个元素,支持取交集、并集、差集
内部编码:
- 整数集合(intset)
-
typedef struct intset{ uint32_t encoding; --- 编码类型(int8_t, int16_t...) uint32_t length; --- 元素个数 int8_t contents[]; --- 可能不是int8_t,由encoding指定 } intset;
适用于集合都是整数,且数量较小的情况。复杂度从O(1)变为O(n)。 优势在于集中存储,节省空间。
-
- 哈希表(hashtable)
-
集合在使用hash表时,value都是null
-
编码转换:
使用整数集合条件:
- 集合中元素数量小于512
- 集合中元素都是整数值
以上是关于Redis---set的主要内容,如果未能解决你的问题,请参考以下文章