数据库系列-Redis简介

Redis

  1. Redis是一种高性能的非关系型的键值对数据库。

Redis特征

  1. 数据间没有必然联系
  2. 单线程的工作机制
  3. 高性能
  4. 支持多种数据类型:string、list、hash、set、sorted-set
  5. 自身是map,采用key:value存储数据

常用数据类型

1. string
(1)存储:
存储单个数据,一个空间保存一个数据,常用存储字符串
(2)基本操作:
set key value[mset key1 value1 (key2 value2…)]
get key [mget key1 key2…]
del key
strlen key
append key value原始信息存在就追加其后,不存在就新建
incr key
incrby key increment
incrbyfloat key increment
decr key
decrby key decrement
setex key seconds value
psetex key milliseconds value
(3)数据库中的热点数据key命名惯例
表名:主键名:主键值:字段名
(4)应用场景:
【1】redis 控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作
【2】redis应用于各种结构型和非结构型高热度数据访问加速
2. hash
(1)存储:
对数据进行编组存储,value只能用于存储字符串常用于存储对象信息;一个存储空间保存多个键值对数据;底层使用哈希表实现
(2)基本操作:
hset key field value[hmset key field1 value1 key2 field2…]
hget key field[hmget key field1 field2…]
hgetall key
hdel key field1(field2…)
hlen key
hexists key field
hkeys
hvalues
hincrby key field increment(增加对应的value值)
hincrbyfloat key field increment
(3)应用场景:
【1】应用于购物车数据存储设计
【2】应用于抢购,限购类、限量发放优惠卷、激活码等业务的数据存储设计
3. list
(1)存储:
多个数据,并对数据间的顺序进行区分,存在索引的概念;底层用双向链表实现;具有队列和栈的操作特点
(2)基本操作:
lpush key value1(value2…)
rpush key value1(value2…)
lrange key start stop [lrange key 0 -1 显示全部数据]
lindex key index
llen key
lpop key
rpop key
blpop key1(key2…) timeout 规定时间内
brpop key1(key2…) timeout
brpoplpush source destination timeout
lrem key count value 移除count个value
(3)应用场景:
【1】应用于具有操作先后顺序的数据控制
【2】应用于最新消息展示
4. set
(1)存储:
大量不重复数据;与hash存储结构相同,但只存键,不存值(nil)
(2)基本操作:
sadd key member1(member2…)
smembers key 获取全部
srem key member1(member2)
scard key 数据总量
sismember key member
srandmember key [count]随机取出集合中指定数量的数据
spop key [count]随机获取并移除
sinter key1 [key2]
sunion key1 [key2]
sdiff key1 [key2]
sinterstore destination key1 [key2]
sunionstore destination key1 [key2]
sdiffstore destination key1 [key2]
smove source destination member
(3)应用场景:
【1】应用于随机推荐类信息检索,例如热点歌单推荐,热点新闻推荐,热卖旅游线路,应用APP推荐,大V推荐等
【2】应用于同类型数据的快速去重
【3】应用于基于黑名单与白名单设定的服务控制
5. sorted-set
(1)存储:
排序数据;在set基础上添加可排序字段(score)
(2)基本操作:
zadd key1 score1 member1(score2 member2)
zrange key start stop [WITHSCORES]
zrevrange key start stop [WITHSCORES]
zrem key member1(member2…)
zrangebyscore key min max [WITHSCORES]
zrevrangebyscore key max min [WITHSCORES]
zremrangebybank key start stop (按索引删除)
zremrangebyscore key min max
zcard key 数据总量
zcount key min max
zinterstore destination numkeys key1[keys2…]
zunionstore destination numbers key1[key2…]
zrank key member获取对应索引
zrevrank key member
zscore key member 修改score值
zincrby key increment member
(3)应用场景:
【1】应用于计数器组合排序功能对应的排名
【2】应用于定时任务执行顺序管理或任务过期管理
【3】应用于即时任务/消息队列执行管理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值