首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Redis Set

, 10 5月 2022 作者 847954981@qq.com 后端学习 Redis Set SetRedis中的数据类型,与Redis的Zset有所区分: Set中文描述为“无序集合” 特点是...redisTemplate.opsForSet().add("ranks", personalRecord1, personalRecord2); 既然是操作 Set,那么方法自然是 opsForSet...返回值的泛型,就是新增数据的类型,往 Set 缓存里放了什么数据,拿出来就是什么数据。...多集合操作 使用 Set 一般来说并不是用于数据对象的缓存,因为无序,实际上操作很不方便,不能像列表一样精确查询。 使用 Set 多用于集合间的操作。...所以,推荐 Set 存储简单的数据,比如 Java 的字符串或数字,而不要在 Set 中存入复杂的 Java 自定义对象。 比如只存入个人战绩的 id 值而不是整个对象。

40730
您找到你想要的搜索结果了吗?
是的
没有找到

redis | 六、redisSet

redis系列文章: https://liudongdong.top/categories/redis 本篇来源: https://liudongdong.top/archives/redisliu-redis-zhi-set...一、基本概念 RedisSet 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 集合对象的编码可以是 intset 或者 hashtable。...集合操作 sdiff:俩个集合之间的差集 sdiffstore:俩个集合之间的差集,结果放到新的set中 sinter:俩个集合之间的交集 sinterstore:俩个集合之间的交集,结果放到新的set...中 sunion:俩个集合之间的并集 sunionstore:俩个集合之间的并集,结果放到新的set中 三、命令实践 1....并集 Redis Sunion 命令返回给定集合的并集。不存在的集合 key 被视为空集。

18840

④【SetRedis常用数据类型: Set

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ ④Redis Set...操作命令汇总 RedisSet是String类型的无序不可重复集合,集合对象的编码可以是intset或者hashtable RedisSet集合是通过哈希表实现的,添加、删除、查找的复杂度都是O(1...sadd set1 m2 m3 # 返回值是操作成功的个数 2. smembers 遍历集合中所有成员 smembers key # 遍历set1中的所有元素 smembers set1 3. sismember...判断集合中是否存在指定的成员 sismember key member # 判断指定成员是否存在于集合set1 # 1:yes # 0:no sismember set1 m1 sismember set1...移动到set2 smove set1 set2 888 9. sdiff 集合成员的差集运算 sdiff key [key ...] # 返回 属于集合s1 但不属于集合s2的成员 sdiff s1

11510

Redis源码】Redis Set命令详解

我们知道,Redis在解析命令行参数时,会将各个参数解析成robj类型,当expire值不为NULL则表示需要设置key的超时时间。...MAXMEMORY_FLAG_NO_SHARED_INTEGERS \ (MAXMEMORY_FLAG_LRU|MAXMEMORY_FLAG_LFU) #define OBJ_SHARED_INTEGERS 10000 第一种情况: 如果Redis...Redis key的超时时间实际存储的是当前key的到期毫秒时间戳,所以在指定超时时间单位为秒时,需要将时间值乘以1000来转化为毫秒数,将当前时间加上超时毫秒数的结果就是key的超时毫秒时间戳。...Redis将所有含有超时时间的key存储到redisDb的expire字典内,ttl命令可以快速确定key的超时秒数,就是通过查找这个字典实现的。...通过以上4个步骤已经成功地将一个key-value设置到Redis的数据库中。

1.1K20

redis学习笔记-set

集合简介 本文会对redis中的集合对象进行学习。关于对象是什么,之前已经总结过,本文不再赘述,直接开始介绍集合对象。 集合的对象编码可以使intest或者hashtable。...2. intest&hashtable简介 2.1 整数集合intset 当一个集合只包含整数值元素,并且元素不多时,redis就会用intset作为集合的底层实现。...hash之前讲过,这里不讲了 set的基本操作命令 跟之前讲hash一样,多用help命令,可以查看set下的所有基本操作,redis界面中输入` help @set`即可查看。...无序;2.去重 那么如果你希望存重复的数据,set不适合; set因为是无序的,所以也不会有下标访问,如果你希望访问指定元素,set也不适合。 set试用于一些随机场景。...放到购物场景里,就能为用户推荐他可能喜欢的商品 参考《redis设计与实现》

42530

redis妙用-set类型

set类型,在redis中是非常强大的存在,但是我们一般不会想到用它。所以我最想分享的也就是set类型,想让大家对set引起重视。...因为在互联网中其实也有很多set的身影,只是我们不难么容易联想到而已。...userId} # 检查用户是否点过赞 SMEMBERS like::{articleId} # 获取所有点赞用户列表 SCARD like::{articleId} # 获取点赞用户数 好友关注模型 [set...allysub jayden、 SISMEMBER allysub james far可能认识的人:SDIFF allysub farsub -> {"seven", "jack"} 电商商品筛选 [set...使用redis解决方案。将我们要关注的字段值,比如订单号、金额组成一个值存入redisset类型中,形成两个set集合,然后取差值。如下 [set订单对账的功能]

1K11

redis源码之set结构

关于set的命令和常用场景我们暂时先不说了,如果对命令不太熟悉的朋友可以用 help @set命令查看,我们先来看set中的一种现象 127.0.0.1:6379> sadd set-1 a b c d...(如果给set-2再添加任意一个非数字的元素,结果立即会变为无序),但是我们都知道set是一种无序的集合,这是为什么呢?...其实我们可以分别看一下set-1和set-2的类型 127.0.0.1:6379> object encoding set-1 "hashtable" 127.0.0.1:6379> object encoding...set-2 "intset" 我们发现set-1是hashtable类型,而set-2是intset类型的 其实对于redisset类型来说,set是无序的,自动去重的集合数据类型,set数据结构底层实现为一个...整型集合是一个有序的,存储整型数据的结构,整型集合在redis中可以保存int16_t,int32_t,int64_t类型的整型数据,并且可以保证集合中不会出现重复数据。

61540
领券