redis笔记

1.redis的五种数据类型
 string、hash、list、set、sort set
2.string
  (1)redis 的存储最大容量是512M
  (2)string 的命令有 setget,incr,desc,incrby,descby,append,strlen,mget,mset,getbit,
setbit,bitcount,bittop
  (3)应用
   1、文章访问量统计,redis建最好的命令方式为 对象类型:对象id:对象属性
   2、自增id 对象类型:count
redis 的的数据类型中值不能嵌套其他数据类型
3.hash
   (1)字段值只能是字符串
  (2)散列类型适合存储对象:使用对象类别和ID构成键名
  (3)存储对象相对于关系型数据库来说更加容易进行字段的扩展。
  (4)散列命令 hset,hget,hmget,hmset,hgetall,hexitst,hincrby,hdel,hkeys,hvals,hlen
4.list
   (1)列表可以存储一个有序的字符串列表,常用的操作是向两端添加元素,内部基于双向链表实现,时间复杂度O(1)
  (2)适合用来记录日志,获取最新记录
  (3)命令lpush,rpush,lpop,rpop,llen,lrange,lrem,lindex,lset,ltrim,linsert
       lrem key count value
          count >0 从左侧开始删除前count个值为value的元素
          count <0 从右侧开始删除前|count|个值为value的元素
          count=0 删除所有值为value的值
   (4)应用 存储文章ID列表 存储评论列表
    (5) linsert key before|after pivot vlue
         在列表中从左到右查找值为pivot的元素,根据before和after决定插入前面还是后面
   (6)rpoplpush source destination 将元素从一个列表转到另一个列表(只有这个命令,没有其他命令)
5.set 
    (1)集合常用于向集合中加入或删除元素,判断某个元素是否存在,集合类型是根据散列值为空实现的,所以时间复杂度都为O(1),集合可以进行交,并,差集运算
   (2)操作 sadd,srem,
         smembers key 获取集合中所有的元素
         sismemer key member 判断一个集合是否存在一个元素
        sdiff 差集,sinter 交集,sunion 并集
         sdiffstore dest key ,sinterstore,sunionstore 不直接返回结果,将结果存储正在dest 中
         srandmemer key [count] 随机获取集合中元素,还可以有参数count,
         count>0 获取count个大于0的元素,如果count 的值大于集合中的元素个数,则会返回集合中全部元素
         count<0  从集合中获取 |count|个,有可能相同
       spop 弹出并删除
    (3)应用
         存储文章标签、通过标签搜索文章
6.sorted set
  有序集合,在集合的基础上,每个元素关联了一个分数,

   <1>有序集合和列表区别
       (1)两者都是有序的
       (2)两者都可以获取某一范围的元素
       (3)列表基于链表实现,数量增多两边比较快,中间比较慢,适合新鲜事物和日志
       (4)有序集合使用散列表和跳跃表实现,时间复杂度O(logN)
        (5)列表不能简单调整某个元素的位置,有序集合可以
        (6)有序集合比较耗费内存
    <2>命令 zadd key score member
          zscore key mebmer 获取分数
           zscore key start stop [withscores]        
       zrevrange key start stop [withscores]
       按元素分数从小到大返回数据,如需要获取分数后面加上,withscores
           zincrby key incr member
     <3>应用
        按点击量排序,改进时间进行排序
       zcard 获取元素个数         zrem ,zrank
               

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值