第二十周:Redis(二)

复制代码
 本周继续介绍Redis数据库,主要从Redis的多样数据结构入手。Redist数据库包含多种常用的数据结构(String,Set,Hash,List,Zset等),正是因为这些多样的数据结构,使得Redis具备强大的功能,下面来具体介绍一下这些数据结构的使用。

1.String

复制代码
   String类型与Java中的String类型差不多,在Redis中String类型主要可用于实际开发中的计数器、缓存简单值等功能,当然也可以用于存储文本、数字等内容。
   下面介绍一下它的常见命令
   基本操作:
java 复制代码
SET key value:设置键值
GET key:获取键值
DEL key:删除键
EXISTS key:检查键是否存在
EXPIRE key seconds:设置过期时间
TTL key:查看剩余时间
复制代码
数值操作:
java 复制代码
INCR key:值加1(整数)
DECR key:值减1(整数)
INCRBY key increment:增加指定数值
DECRBY key decrement:减少指定数值
复制代码
批量操作:
java 复制代码
MSET key1 value1 key2 value2:批量设置
MGET key1 key2:批量获取

2.Hash

复制代码
  Hash为字段-值集合,同样类似于Java的Map,在实际场景中多用于存储用户的基本信息、商品的基本信息、订单的基本信息等。它的常用Redis命令:
  
  基本操作:
java 复制代码
HSET key field value:设置字段值
HGET key field:获取字段值
HDEL key field:删除字段
HEXISTS key field:检查字段是否存在
HGETALL key:获取所有字段和值
HKEYS key:获取所有字段名
HVALS key:获取所有值
复制代码
数值操作:
java 复制代码
HINCRBY key field increment:增加字段数值

3.List

复制代码
 List在Redis中是一个双向的链表,既可以从头部插入获取元素也可以从尾部插入获取元素,同时具备获取指定范围内元素的功能,在实际应用中多用于消息队列、排行榜等具有排行功能的场景。关于它的常用命令:
 基本操作:
java 复制代码
LPUSH key value:从左侧插入
RPUSH key value:从右侧插入
LPOP key:从左侧弹出
RPOP key:从右侧弹出
LLEN key:获取列表长度
LRANGE key start stop:获取指定范围元素
复制代码
阻塞操作:
java 复制代码
BLPOP key timeout:左侧阻塞弹出
BRPOP key timeout:右侧阻塞弹出

4.Set

复制代码
  Set集合在Java中其内部存储的元素是无序的且不可重复,在Redis中同样具有这些特性,同时Redis中的Set集合也提供了便捷的求集合交集、并集、差集的相关运算。它在实际中主要用于标签系统、去重,共同好友推荐等业务,下面介绍它的常用命令:
 基本操作:
java 复制代码
SADD key member:添加成员
SREM key member:删除成员
SMEMBERS key:获取所有成员
SISMEMBER key member:检查成员是否存在
SCARD key:获取集合大小
复制代码
集合运算:
java 复制代码
SINTER key1 key2:交集
SUNION key1 key2:并集
SDIFF key1 key2:差集

5.Zset

复制代码
 Zset也称作SortedSet,j即有序的集合,类似于Java中的TreeSet可以有序排列,与Set不同的是它其中的每个元素关联一个分数(score),score主要是用于排序。它的实际应用主要是在热搜排行榜、延迟任务(按时间戳排序)、根据某值查询信息,与Set相似,Zset同样具有求集合并集、交集、差集的运算。下面介绍一下它的常用命令:
 基本操作:
java 复制代码
ZADD key score member:添加成员(带分数)
ZREM key member:删除成员
ZRANGE key start stop [WITHSCORES]:按排名范围查询
ZREVRANGE key start stop [WITHSCORES]:按排名倒序查询
ZSCORE key member:获取成员分数
ZRANK key member:获取成员排名(升序)
ZREVRANK key member:获取成员排名(降序)
复制代码
范围查询:
java 复制代码
ZRANGEBYSCORE key min max:按分数范围查询
ZCOUNT key min max:统计分数范围内的成员数
复制代码
  以上便是Redis数据结构中常见的命令。
相关推荐
YOU OU21 分钟前
Redis基础常识与命令
数据库·redis·缓存
Database_Cool_3 小时前
OLTP 和 OLAP 区别详解:分析型数据库和事务型数据库怎么选(附阿里云 AnalyticDB MySQL 选型指南)
数据库·mysql·阿里云
爱写代码的阿森3 小时前
鸿蒙三方库 | harmony-utils之KvUtil键值型数据库操作详解
数据库·华为·harmonyos·鸿蒙·huawei
Database_Cool_3 小时前
单机 MySQL 迁移到分布式数据库方便吗?阿里云 PolarDB-X 100% MySQL 协议兼容零改造平滑迁移
数据库·分布式·mysql
姜太小白4 小时前
【MySQL】 索引优化实战:解决 WHERE 等值 + IS NULL 查询,TEXT 字段报错 1167 的完整指南
数据库·mysql
窝子面5 小时前
手搓最简前后端协作-node
javascript·数据库
吳所畏惧5 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
DFT计算杂谈5 小时前
无 Root 权限在 Tesla K80 零门槛部署 DeepSeek 大模型
linux·服务器·网络·数据库·机器学习
HPFBoy5 小时前
log4net 数据库存日志正确配置
数据库