2019独角兽企业重金招聘Python工程师标准>>>
集合用来保存多个字符串元素,不可重复,无序,最多存储2^32-1元素,在实际开发中一般使用集合的交集并集,差集
常用命令:
sadd(添加元素,返回操作成功元素个数) ,srem(删除),scard key(计算元素个数,o(1),直接使用redis内部的变量),sismember key element(判断元素存在 1存在 0 不存在),srandmember key count(随机返回指定个数元素,默认1),spop(随机弹出元素,并删除),smembers key(获取所有元素)
集合之间操作:
交集:sinter key... sinterstore destination key..... 将结果保存
并集:sunion key... sunionrstore destination key..... 将结果保存
差集:sdiff key... sdiffrstore destination key..... 将结果保存
内部编码:
1.intset(整数集合),当集合类型元素小于set-max-intset-entries配置(默认521个),redis会使用intset作为内部实行
2.hashtable(哈希表),当集合类型无法满足intset条件时候,redis会使用hashtable作为集合的内部实现
使用场景:标签,计算用户共同感兴趣的标签
小提示:
sadd= tagging(标签)
spop/srandmembber = (生成随机数,比如抽奖)
sadd + sinter = 社交需求