Redis的数据结构介绍

Redis的安装不会介绍,有兴趣的可自行百度

Redis的数据结构介绍

  •  redis是一种高级的key-value的存储系统,其中value支持物种数据类型
  1. 字符串 (string)
  2. 哈希(hash)
  3. 字符串列表 (list)
  4. 字符串集合 (set)‘
  5. 有序字符串集合(sorted set)
  • 关于key的定义,要注意以下几点:
  1. key不要太长,最好不要超过1024个字节,这不仅会消耗内存还会降低查找效率
  2. key不要太短,如果太短会降低key的可读性
  3. 在项目中,key最好有一个统一的命名规范

字符串类型是Redis中最为基础的数据存储类型,他在Redis中是二进制安全的,这便意味着该类型存入和获取的数据相同,在redis中字符串类型的Value最多可以容纳的数据长度是512M.

常用命令:

  string

  设置值

  set key value :设定key持有指定的字符串value,如果key存在则进行覆盖操作,总是返回"OK" 

  

  

  取值:

  get key:获取key的value。如果与该key关联的value不是String类型,redis将返回错误信息,因为get只能用于获取String value,如果key不存在返回nil  代表无的意思

  

  删除:

  

  数值的增减

  

  扩展(了解):

  

  

  hash

   赋值

    

  

    取值:

    

    

    删除:

    

     

    

 只介绍一个图示 下面罗列所有的基本命令:

数据类型
  string
      掌握的操作:
    赋值
      格式: set key value
      例如:set username tom
    取值
      格式: get key
      例如: get username

    先获取再设置
      getset key value
      例如: getset username jack

    删
      del key
      例如: del d

  了解:
    对于数字类型 自增和自减
      incr key ++
      decr key --

    增加或减少指定的数量
      incrby key int
      decrby key int
    拼接字符串
      append key value


  list
    赋值:
      左边:lpush key value value2 value3
      右边:rpush key value value2 value3
    取值:
      左边:lpop key
      右边:rpush key

    获取所有元素
      lrange 0 -1
    获取元素的个数
      llen key

    扩展:
      lpushx key value :若有则添加 若没有则不添加
      rpushx key value :若有则添加 若没有则不添加

      lrem key count value:从左边移除count个value
      若count>0 :从左边移除count个value
      若count<0 :从右边移除count个value
      若count=0 :从右边移除所有的value

      lset key index value
      设置链表中指定索引的元素值 0 代表是第一个
      -1代表的是最后一个

  hash:
    了解
    又存入一个map集合
      user username tom
      age 18
      sex 1
    存值:
      存入一个值
      hset key subkey subvalue
      存入多个值
      hmset key subkey1 subvalue1 subkey2 subvalue2

    获取:
      获取一个值
      hget key subkey
      获取多个值
      hmget key subkey1 subkey2

    移除值:
      hdel key subkey subkey
      给一个key添加指定的数字
      hincrby key subkey int


  set
    添加
      sadd key value1 value2
    删除
      srem key value1 value2
    获取
      smembers key
    判断是否是是set中的一员
      sismember key value

    运算
      差集: sdiff s1 s2
      交集: sinter s1 s2
      并集: sunion s3 s4

    获取数量
      scard key
      srandmember key:随机获取一个




  sortedSet
    添加元素
      zadd key score m1 score m2
    获取元素
      zscore key m:获取指定成员的得分
      zcard key:获取key的长度


    删除元素
      zrem


  通用的操作:
    keys * :查看所有的key
    del key:删除指定的key
    exists key:判断一个key是否存在
    rename oldkey newkey:重命名
    expire key 秒数:
    ttl key :查看一个key剩余存活时间
    -1:持久存活
      -2:不存在
    type 判断一个可以属于什么类型

原文地址:https://www.cnblogs.com/ttty/p/11364230.html