redis5--set的操作

Set集合类型
(1)介绍
redis的set是string类型的无序集合
set元素最大可以包含(2的32次方-1)个元素
关于set集合类型除了基本的添加删除操作,其它有用的操作还包含集合的取并集(union),
交集(intersection),差集(difference)。通过这些操作可以很容易的实现类似好友推荐的
功能。

注意:每个集合中的各个元素不能重复。

(2)操作
sadd key number           添加一个string元素到key对应的set集合中,成功返回1,
                          如果元素已经在集合中返回0,key对应的set不存在返回错误。
srem key member [member]  从key对应set中移出给定元素,成功返回1
smove p1 p2 member        从p1对应set中移除member并添加p2对应set中
scard key                 返回set的元素个数
sismember key member      判断member是否在set中
sinter key1 key2...keyN   返回所有给定key的交集 
sunion key1 key2...keyN   返回所有给定key的并集 
sdiff key1 key2...keyN    返回所有给定key的差集 
smembers key              返回key对应set的所有元素,结果是无序的

(3)使用
我们模拟qq好友推荐的功能:

首先我们添加tom的好友,创建tomFri的set集合类型数据,内部有五个元素

然后创建linken的好友,创建linkenFri的set集合类型数据,内部有五个元素

取两个set集合的交集,就可以得出两个用户的共同好友:

取并集就是取得既有tom又有linken的好友,相同的数据会出现一次

取差集,并不是是除了交集数据之外的所有数据,而是sdiff key1 key2中,
只取得key1集合中没有key2的所有数据。

想查看set集合的所有内容,使用smembers指令

判断一个元素是否在集合中,使用sismember指令

将tom中的jack转移到linken的好友集合中,使用smove指令,查看set集合
目前的容量,使用scard指令

将xiaoming从tom的好友集合中清除,使用srem指令

转载请注明出处:http://blog.csdn.net/acmman/article/details/53289980

时间: 2024-10-12 18:33:26

redis5--set的操作的相关文章

redis5 别的操作及注意点

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px "Helvetica Neue"; color: #454545; min-height: 15.0px } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545; min-height: 14.0px

redis-5.0 cluster带腾讯分分彩出售认证及客户端连接

Redis在3.0版腾讯分分彩出售dsluntan.com Q:3393756370 VX:17061863513正式引入redis-cluster集群这个特性.Redis集群是一个提供在多个Redis间节点间共享数据的程序集.Redis集群是一个分布式(distributed).容错(fault-tolerant)的Redis内存K/V服务,集群可以使用的功能是普通单机Redis所能使用的功能的一个子集(subset),比如Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间

Scrapy框架之分布式操作

一.分布式爬虫介绍 分布式爬虫概念:多台机器上执行同一个爬虫程序,实现网站数据的分布爬取. 1.原生的Scrapy无法实现分布式爬虫的原因? 调度器无法在多台机器间共享:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url. 管道无法给多台机器共享:多台机器爬取到的数据无法通过同一个管道对数据进行统一的数据持久出存储. 2.scrapy-redis组件 scrapy-redis是专门为scrapy框架开发的一套组件.该组件可以解决上

Redis5.0:这些场景下使用,高效还降低成本!

华为云分布式缓存Redis,能应对很多典型的场景,比如很多大型电商网站.视频直播和游戏应用等,存在大规模数据访问,对数据查询效率要求高,且数据结构简单,不涉及太多关联查询.这种场景使用Redis,在速度上对传统磁盘数据库有很大优势,能够有效减少数据库磁盘IO,提高数据查询效率,减轻管理维护工作量,降低数据库存储成本. Redis对传统磁盘数据库是一个重要的补充,成为了互联网应用,尤其是支持高并发访问的互联网应用必不可少的基础服务之一.以下举几个典型样例:(电商网站)秒杀抢购电商网站的商品类目.推

安装源码包(这里主要写了redis,其他都一样的操作)

一般不再/usr/local/下解压,从其他目录下解压出来,然后复制到/usr/local/下 解压:tar zxvf redis-5.0.5.tar.gz 移动:mv redis-5.0.5 /usr/local/ 如果出现权限问题 mv: rename redis-5.0.5 to /usr/local/redis-5.0.5: Permission denied cd redis-5.0.5 chmod a+wx ./ 还是不行,使用sudo来操作就好了 sudo mv redis-5.0

Redis5.0集群搭建实战

安装环境: 6台 centos7.4 在各个节点下载官网release包,可以自己去官网找: wget  http://download.redis.io/releases/redis-5.0.5.tar.gz 解压:tar -zxvf redis-5.0.5.tar.gz 进入目录:cd redis-5.0.5,如果自定义了解压目录的话需要另外指定 编译:make ,编译即可,会在src目录下生成二进制文件,即可运行redis 如果编译时出现提示jemalloc/jemalloc.h: No

高性能高并发网站架构,教你搭建Redis5缓存集群

一.Redis集群介绍 Redis真的是一个优秀的技术,它是一种key-value形式的NoSQL内存数据库,由ANSI C编写,遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis最大的特性是它会将所有数据都放在内存中,所以读写速度性能非常好.Redis是基于内存进行操作的,性能较高,可以很好的在一定程度上解决网站一瞬间的并发量,例如商品抢购秒杀等活动. 网站承受高并发访问压力的同时,还需要从海量数据中查询出满足条件的数据,需要

Redis5以上版本伪集群搭建(高可用集群模式)

redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用一台机器(可以多台机器部署,修改一下ip地址就可以了)部署6个redis实例,三主三从,搭建集群的步骤如下: 第一步:在第一台机器的/usr/local/redis下创建文件夹redis-cluster,然后在其下面创建6个文件夹如下: mkdir -p /usr/local/redis/redis-cluster 进入redis-clus

redis-5.0.3 redis.conf详解

# Redis configuration file example. # # Note that in order to read the configuration file, Redis must be # started with the file path as first argument: # redis启动命令 # # ./redis-server /path/to/redis.conf # Note on units: when memory size is needed, i

Centos7搭建redis5.0.5集群

Centos7搭建redis5.0.5集群 发表于 2019-09-06 | 分类于 Linux, Redis Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理.它支持数据结构,如字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志,具有半径查询和流的地理空间索引.Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel提供高可用性并使用Redis Cluster自动分区. 官网地址 一.集群方案比较