共计 1210 个字符,预计需要花费 4 分钟才能阅读完成。
Redis 数据类型
Redis 支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及 zset(sorted set:有序集合)。
String(字符串)String 是最常用、最简单的 key-value 键值对,value 不仅可以是 String,也可以是数字。String 在 redis 内部存储默认就是一个字符串,被 redisObject 所引用,当遇到 incr,decr 等操作时会转成数值型进行计算,此时 redisObject 的 encoding 字段为 int。string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 key 对应一个 value。string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如 jpg 图片或者序列化的对象。string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。SET key value 设置指定 key 的值 GET key 获取指定 key 的值 INCR key 将 key 中储存的数字值增一 INCRBY key increment 将 key 所储存的值加上给定的增量值(increment)INCRBYFLOAT key increment 将 key 所储存的值加上给定的浮点增量值(increment) DECR key 将 key 中储存的数字值减一 DECRBY key decrement key 所储存的值减去给定的减量值(decrement)APPEND key value 如果 key 已经存在并且是一个字符串,APPEND 命令将指定的 value 追加到该 key 原来值(value)的末尾 DEL key [key …] 删除 keyEXISTS key [key …] key 是否存在
Hash(哈希)Redis hash 是一个键值 (key=>value) 对集合。Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象 Redis Hash 对应 Value 内部实际就是一个 HashMap,实际这里会有 2 种不同实现,这个 Hash 的成员比较少时 Redis 为了节省内存会采用类似一维数组的方式来紧凑存储,而不会采用真正的 HashMap 结构,对应的 value redisObject 的 encoding 为 zipmap, 当成员数量增大时会自动转成真正的 HashMap, 此时 encoding 为 ht。HMSET key field value [field value …]HDEL key field1 [field2] 删除一个或多个哈希表字段 HEXISTS key field 查看哈希表 key 中,指定的字段是否存在 HGET key field 获取存储在哈希表中指定字段的值 HGETALL key 获取在哈希表中指定 key 的所有字段和值 HINCRBY key field increment 为哈希表 key 中的指定字段的整数值加上增量 increment