zoukankan      html  css  js  c++  java
  • [Redis]Redis的数据类型

    存储String字符串,使用get,set命令,一个键最大存储512M

    存储Hash哈希,使用HMSET和HGETALL命令,参数:键,值

    例如:HMSET user:1 username taoshihan password taoshihan

    HGETALL user:1

    存储List列表,可以重复,使用命令lpush和lrange,lpush的参数:键,值1,值2…

    例如:lpush infos taoshihan nan

    lrange的参数:键,开始索引,结束索引

    例如:lrange infos  0  -1 (-1是全部)

    存储Set集合,不可以重复,使用命令sadd和smembers

    sadd的参数:键,值1,值2…

    例如:sadd users zhangsan li wangwu

    smembers的参数:键

    例如:smembers users

    存储Zset有序集合,不可以重复,使用命令zadd和zrangebyscore

    zadd的参数:键,分数 值1 分数2 值2…

    例如:zadd members 1 zhangsan 2 li 3 wangwu

    zrangebyscore的参数:键,开始索引,结束索引

    例如:zrangebyscore users 0 1

    知乎:redis的基本数据结构有哪些,都有什么应用?

    李波:

    简单说明如下

    字符串(strings):存储整数(比如计数器)和字符串(废话。。),有些公司也用来存储json/pb等序列化数据,并不推荐,浪费内存

    哈希表(hashes):存储配置,对象(比如用户、商品),优点是可以存取部分key,对于经常变化的或者部分key要求atom操作的适合

    列表(lists):可以用来存最新用户动态,时间轴,优点是有序,缺点是元素可重复,不去重

    集合(sets):无序,唯一,对于要求严格唯一性的可以使用

    有序集合(sorted sets):集合的有序版,很好用,对于排名之类的复杂场景可以考虑

    位图(bitmaps):这个不是新增的数据类型,只是可以把字符串类型按照单个位的形式进行操作,没有实际使用过。2016-03-03更新,网上很多人用bitmaps来做活跃用户统计和用户签到功能,性能比去数据库load高很多。

    计数器(hyperloglogs,翻译待定):如名字,添加元素只记录元素个数,并不会存储元素本身,节省空间并且避免重复count,这个感觉直接用incr就可以实现

    地理空间(geospatial indexes):用来做地理位置查询,比如两点之间的距离,一个点附近有多少元素,适合点比较固定的场景,或者只考虑当前位置的场景,像附近的人这种就不适合,一是需要考虑某段时间内的点,二是点经常更新,压力比较大

  • 相关阅读:
    Saltstack module apache 详解
    Saltstack module ip 详解
    Saltstack module iosconfig 详解
    Saltstack module introspect 详解
    Saltstack module inspector 详解
    Saltstack module ini 详解
    Saltstack module incron 详解
    Modbus 指令 RS485指令规则
    停车系统对接第三方在线支付平台(二)
    停车系统对接第三方在线支付平台
  • 原文地址:https://www.cnblogs.com/taoshihan/p/5420774.html
Copyright © 2011-2022 走看看