• Redis笔记


    【Redis特性】
    Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
    Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
    Redis支持数据的备份,即master-slave模式的数据备份。

    【Redis 优势】
    性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
    丰富的数据类型 –Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
    原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
    丰富的特性 – Redis还支持publish/subscribe, 通知, key 过期等等特性。

    【redis应用场景】
    用来做缓存(memcached)——redis的所有数据是放在内存中的(内存数据库)
    可以在某些特定应用场景下替代传统数据库——比如社交类的应用 在一些大型系统中,巧妙地实现一些特定的功能:session共享、购物车等

    【Redis的数据类型】
    type 数据类型
    string 字符串
    list 列表
    hash 哈希
    set 集合
    zset 有序集合

    【string类型】
    保存

    set key value #设置键值
    setex key seconds value #设置键值及过期时间,以秒为单位
    mset key1 value1 key2 value2... #设置多个键值
    append key value #追加值

    获取

    get key #根据键获取值,如果不存在此键则返回nil 
    mget key1 key2 ... #根据多个键获取多个值

    键命令

    keys * #查看所有键
    exists key1 #判断键是否存在,如果存在返回1,不存在返回0
    type key #查看键对应的value的类型
    del key1 key2 ... #删除键及对应的值
    expire key seconds #设置过期时间,以秒为单位,如果没有指定过期时间则一直存在,直到使用DEL移除
    ttl key #查看有效时间,以秒为单位

    【hash类型】
    hash用于存储对象,对象的结构为属性、值,值的类型为string。
    增加、修改

    hset key field value #设置单个属性
    hmset key field1 value1 field2 value2 ... #设置多个属性

    获取

    hkeys key #获取指定键所有的属性
    hget key field #获取一个属性的值
    hmget key field1 field2 ... #获取多个属性的值
    hvals key #获取所有属性的值

    删除:删除整个hash键及值,使用del命令

    hdel key field1 field2 ... #删除属性,属性对应的值会被一起删除

    【list类型】
    列表的元素类型为string,按照插入顺序排序
    增加

    lpush key value1 value2 ... #在左侧插入数据
    rpush key value1 value2 ... #在右侧插入数据
    linsert key before或after 现有元素 新元素 #在指定元素的前或后插入新元素

    获取

    返回列表指定范围内的元素
    start、stop为元素的下标索引
    索引从左侧开始,第一个元素为0
    索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
    lrange key start stop
    设置指定索引位置的元素值
    索引从左侧开始,第⼀个元素为0
    索引可以是负数,表示尾部开始计数,如-1表示最后一个元素
    lset key index value

    删除

    删除指定元素
    将列表中前count次出现的值为value的元素移除
    count > 0: 从头往尾移除
    count < 0: 从尾往头移除
    count = 0: 移除所有
    lrem key count value

    【set类型】
    无序集合,元素为string类型,元素具有唯一性,不重复。
    说明:对于集合没有修改操作
    增加

    sadd key member1 member2 ... #添加元素

    获取

    smembers key #返回所有的元素

    删除

    srem key #删除指定元素

    【zset类型】
    sorted set,有序集合,元素具有唯一性,不重复。
    每个元素都会关联一个double类型的score,表示权重,通过权重将元素从⼩到⼤排序 说明:没有修改操作
    增加

    zadd key score1 member1 score2 member2 ... #添加

    获取

    返回指定范围内的元素,start、stop为元素的下标索引
    索引从左侧开始,第一个元素为0
    索引可以是负数,表示从尾部开始计数,如-1表示最后一个元素
    zrange key start stop
    zrangebyscore key min max #返回score值在min和max之间的成员
    zscore key member #返回成员member的score值

    删除

    zrem key member1 member2 ... #删除指定元素
    zremrangebyscore key min max #删除权重在指定范围的元素
  • 相关阅读:
    Lintcode415-Valid Palindrome-Medium
    Lintcode455-StudentID-Easy
    Lintcode241-String to Integer
    Lintcode521-Remove Duplicate Numbers in Array-Easy
    Lintcode214-Max of Array-Naive
    面试一个小公司,TPM相关概念
    C#, introduction, general
    make命令和makefile
    OS_Architecture_MemoryHierarchy
    Leecode_98_Validate_Binary_Search_Tree
  • 原文地址:https://www.cnblogs.com/rxbook/p/10655985.html
Copyright © 2020-2023  润新知