Redis详细介绍以及5种数据类型命令的介绍

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis详细介绍以及5种数据类型命令的介绍

1.0倍蜗牛正在行驶中…

1、Redis

1.1、能够帮助我们解决高并发、高可用、高扩展,大数据存储等一系列问题而产生的数据库解决方案

1.2、Redis的数据类型

1.2.1、String字符串类型

1.2.2、Hash散列类型

1.2.3、List列表类型

1.2.4、Set集合类型

1.2.5、ZSet有序集合类型


1.3、应用场景

1.3.1、缓存(多用于查询列表的缓存)

1.3.2、数据过期处理,如短信验证码

1.3.3、分布式锁

1.3.4、分布式集群架构中的session分离

1.3.5、任务队列,如淘宝、京东的秒杀和抢购等等

1.3.6、发布订阅消息模式

1.3.7、应用排行榜

1.3.8、布隆过滤器

1.3.9、聊天室的在线好友列表

1.3.10、网站访问统计


2、Redis数据类型

2.1、String

2.1.1、赋值 set key value

2.1.2、读取 get key

2.1.3、取值并赋值 getset key value

2.1.4、设置、获取多个键值

2.1.4.1、mset key value[key value …]

2.1.4.2、mget key [key …]

2.1.5、显示所有的 keykeys

2.1.6、删除 del key

2.1.7、数值的增减

2.1.7.1、递增数字 incr key

2.1.7.2、指定增加的整数 incrby key increment

2.1.7.3、递减数值 decr key

2.1.7.4、减少指定的整数 decrby key decrement

2.1.8、向尾部追加值 append key value

2.1.9、获取字符串长度 strlen key


2.2、Hash

2.2.1、赋值 hset key field value [field value …]

2.2.2、取值 hget key field [field …]

2.2.3、获取所有 hgetall key

2.2.4、删除 hdel key field [field …]

2.2.5、增加数字(和自增一样) hincrby key field increment

2.2.6、判断字段是否存在 hexists key field

2.2.7、只获取字段名或字段值 hkeys key ; hvalues key

2.2.8、获取字段数量 hlen key


2.3、List

2.3.1、向列表两端(左右)添加元素 lpush(rpush) key value [value …]

2.3.2、查看列表 lrange key start stop

2.3.3、从列表两端弹出元素

2.3.3.1、lpop命令会从列表左边弹出一个元素,会分成两步完成

2.3.3.1.1、第一步将列表左边的元素从列表移除

2.3.3.1.2、第二步是返回被移除的元素值

2.3.3.2、语法 blpop key ; brpop key

2.3.4、删除列表指定值 lrem key count value

2.3.4.1、lrem命令会删除列表中前count个值为value的元素,返回实际删除的元素个

数。根据count的值不同,该命令的执行方式也会有所不同

当count>0时,lrem会从列表左边开始删除

当count<0时,lrem会从列表后边开始删除

当count=.时,lrem删除所有值为value的元素


2.3.5、获取、设置指定索引的元素值

2.3.5.1、获得指定索引元素值 lindex key index

2.3.5.2、设置指定索引元素值 lset key index value

2.3.6、只保留列表指定片段 ltrim key start stop

2.3.7、向列表中插入元素 linsert key BEFORE | AFTER pivot value

2.3.8、将元素从一个列表转移到另一个列表中 rpoplpush source destination


2.4、Set

2.4.1、增加、删除元素

2.4.1.1、sadd key member [ member …]

2.4.1.2、srem key member [member …]

2.4.2、获得集合中的所有元素 smerbers key

2.4.3、判断元素是否在集合中 sismember key member

2.4.4、获得集合中的元素的个数 scard key

2.4.5、从集合中弹出一个元素 spop key


2.5、ZSet

2.5.1、是有序集合,可排序的,但是唯一

2.5.2、set的不同之处,是会给set中的元素添加一个分数,然后通过这个分数进行排序

2.5.3、增加元素 zadd key score member [score member …]

2.5.4、获取元素的分数 zscore key member

2.5.5、删除元素 zrem key member [ member …]

2.5.6、获得排名在某个范围的元素列表 zrange key start stop [WITHSCORES]

2.5.7、获取元素的排名

2.5.7.1、从小到大 ZRANK key member

2.5.7.2、从大到小 ZREVRANK key member

2.5.8、获取指定分数范围的元素 ZRANGEBYSCORE key min max[WITHSCORES][LIMIT offset

count]

2.5.9、增加某个元素的分数 ZINCRBY key increment member

2.5.10、获得集合中元素的数量 ZCARD key

2.5.11、获得指定分数范围内的元素个数 ZCOUNT key min max

2.5.12、按照排名范围删除元素 ZREMRANGEBYRANK key start stop

2.5.13、按照分数范围删除元素 ZREMRANGEBYSCORE key min max


2.6、集合的差集运算

20201115201529503.png


3、Keys命令

3.1、这里可以度娘一下,本人有点小懒了!!!!!!!!!!!

20201115201618922.jpg

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
存储 缓存 NoSQL
解决Redis缓存数据类型丢失问题
解决Redis缓存数据类型丢失问题
188 85
|
14天前
|
消息中间件 存储 NoSQL
java连接redis和基础操作命令
通过以上内容,您可以掌握在Java中连接Redis以及进行基础操作的基本方法,进而在实际项目中灵活应用。
83 30
|
2月前
|
NoSQL 应用服务中间件 API
Redis是如何建立连接和处理命令的
本文主要讲述 Redis 是如何监听客户端发出的set、get等命令的。
790 29
|
2月前
|
存储 NoSQL Redis
redis常见数据类型
Redis 是一种基于内存的键值存储数据库,支持字符串、哈希表、列表、集合及有序集合等多种数据类型,每种类型均有特定用途与适用场景,提供丰富的命令操作,适用于高速数据访问与处理。
61 5
|
3月前
|
存储 消息中间件 NoSQL
使用Java操作Redis数据类型的详解指南
通过使用Jedis库,可以在Java中方便地操作Redis的各种数据类型。本文详细介绍了字符串、哈希、列表、集合和有序集合的基本操作及其对应的Java实现。这些示例展示了如何使用Java与Redis进行交互,为开发高效的Redis客户端应用程序提供了基础。希望本文的指南能帮助您更好地理解和使用Redis,提升应用程序的性能和可靠性。
62 1
|
4月前
|
NoSQL Java Redis
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
这篇文章介绍了Redis的基本命令,并展示了如何使用Netty框架直接与Redis服务器进行通信,包括设置Netty客户端、编写处理程序以及初始化Channel的完整示例代码。
105 1
redis的基本命令,并用netty操作redis(不使用springboot或者spring框架)就单纯的用netty搞。
|
4月前
|
存储 消息中间件 NoSQL
Redis 数据类型
10月更文挑战第15天
61 1
|
3月前
|
存储 NoSQL Java
Redis命令:列表模糊删除详解
通过本文的介绍,我们详细探讨了如何在Redis中实现列表的模糊删除。虽然Redis没有直接提供模糊删除命令,但可以通过组合使用 `LRANGE`和 `LREM`命令,并在客户端代码中进行模糊匹配,来实现这一功能。希望本文能帮助你在实际应用中更有效地操作Redis列表。
146 0
|
4月前
|
缓存 NoSQL 测试技术
Redis如何解决频繁的命令往返造成的性能瓶颈!
Redis如何解决频繁的命令往返造成的性能瓶颈!
|
4月前
|
缓存 NoSQL Redis
Redis命令:列表模糊删除详解
Redis命令:列表模糊删除详解
125 3