zoukankan      html  css  js  c++  java
  • Redis_常用5大数据类型简介

      前面介绍了一些redis的的基本配置,以及安装,本文继续学习redis的五大数据类型。

    一、Redis的五大数据类型

      String(字符串)List(列表)、Set(集合)、Hash(哈希,类似java里的map)、Zset(sorted set:有序集合)

    二、那里去获取Redis的常见数据类型操作命令

      Http://redisdoc.com/

    三、Redis键(key)

      常用的key命令:

       keys *(查询所以的key)

      exists key 判断某个key是否存在(1表示存在,0表示不存在)

      move key db(将某个key移动到其他库中)

      expire key 秒:为给定的key设置过期时间(返回1表示成功)

      ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已经过期

      type key 查看key是什么类型

      注意:在set时,如果key存在,则后面的value值将会覆盖之前的value值

    四、Redis字符串(String)

      String是redis最基本的类型,你可以理解成与Memcached一样的类型,一个key对应一个value。

      String类是是二进制安全的。意思是redis的String可以包含任何数据。比如jpg图片或者序列化的对象。

      String类型是Redis最基本的数据类型,一个redis中value最多可以是512M

      set 设置值,get获取值,del删除值

      append(拼接String,返回value长度),strlen(获取String长度)

      incr key +1,decr key -1,incrby key n +n, decrby key n -n(需要注意的是,只有数字才可以操作)

      如果不是数字,则会报错。

      getrange:获取指定区间范围内的值,类似between...and的关系。(注意:从0到-1表示全部)

      setrange:设置指定区间范围内的值,格式是settrange key值 具体值

      setex(set with wxpire)键秒值:设置key/value时设置存活时间

      setnx(set id not exist)设置key 如果key存在则插入数据失败 返回0

      mset(批量插入数据)/mget(批量获取数据)/msetnx(批量使用setnx插入数据)

     

    五、Redis列表(List)

      Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部或者尾部。它的底层是一个链表。

      lpush key v1 v2 v3(插入list返回长度)

      rpush key (在最后加入value的值) lpush key(在最前面加入value的值)

      lrange key n n (查询list的值,0 到 -1为全部)

      lpop 从左删除 rpop从右删除

      lindex 按照索引获取元素(从上到下)

      llen 查看list中元素个数

      lrem key n value 删除n个value,如果value值不够则删除所有的这个value值返回删除个数

      ltrim key 开始 index 结束index,截取知道范围的值后赋值给key

     

      rpoplpush key1 key2 将key1的右侧value到key2中

      lset key index value 给具体下标位置设置value,如果该下标不存在则报错

      linsert key before/after 值1 值2(在值1之前/之后插入值2,如果有重复的值则会在第一个前后进行插入)

      总结:

        它是一个字符串链表,left,right都可以插入添加

        如果键不存在,创建新的链表,如果键已经存在则新增内容

        如果内容全部移除。对应的键也消失。

        链表的操作无论是在头和尾效率都极高,但假如是对中间元素进行操作,效率就很惨淡。

    六、Redis集合(Set)

      Redis的Set的histring类型的无序集合。他是通过HashTable实现的。

    七、Redis哈希(Hash)

      Redis hash是一个键值对集合。

      Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

      类似Java里面Map<String, Object>

    八、Redis有序集合Zset(sorted set)

      Redis zset和set一样也是string类型元素的集合,而且不允许重复的成员。

      不同的是每个元素都会关联一个double类型的分数。

      redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

  • 相关阅读:
    27 Spring Cloud Feign整合Hystrix实现容错处理
    26 Spring Cloud使用Hystrix实现容错处理
    25 Spring Cloud Hystrix缓存与合并请求
    24 Spring Cloud Hystrix资源隔离策略(线程、信号量)
    23 Spring Cloud Hystrix(熔断器)介绍及使用
    22 Spring Cloud Feign的自定义配置及使用
    21 Spring Cloud使用Feign调用服务接口
    20 Spring Cloud Ribbon配置详解
    19 Spring Cloud Ribbon自定义负载均衡策略
    18 Spring Cloud Ribbon负载均衡策略介绍
  • 原文地址:https://www.cnblogs.com/wuyx/p/8675610.html
Copyright © 2011-2022 走看看