2016022603 - redis数据类型

时间:2023-03-09 09:28:16
2016022603 - redis数据类型

  Redis支持5种类型的数据类型

  1.字符串:Redis字符串是字节序列。Redis字符串是二进制安全的,这意味着他们有一个已知的长度没有任何特殊字符终止,所以你可以存储任何东西,512兆为上限。【类比java中的字符串】

  2016022603 - redis数据类型

  2.Redis的哈希:键值对的集合。

  Redis的哈希值是字符串字段和字符串值之间的映射,因此它们被用来表示对象.【类比java中map,key是字符串,value是map】

  2016022603 - redis数据类型

  哈希值设置命令是hmset,获取命令是hgetall。当使用双引号引上key和value值的时候,比如name和lilei,结果是一样的。

  3.列表:Redis的列表是简单的字符串列表,排序插入顺序。您可以添加元素到Redis的列表的头部或尾部。【类比java中的list】

  2016022603 - redis数据类型

  2016022603 - redis数据类型  

  注意:当使用lrange查询某个列表的时候,必须跟上查询数据的起始结束的索引值,和java中的list列表一样。

  默认最新插入的在查询结果的最前面

  4.集合:Redis的集合是字符串的无序集合。在Redis您可以添加,删除和测试文件是否存在,在成员O(1)的时间复杂度。【类比java中的set】

  2016022603 - redis数据类型

  注意:测试数据中使用两次rabbitmq,结果中只存在一个,集合中的数据具有唯一性。

     类比java中set集合,看图示可以直到查询出来的数据和插入的数据顺序是不一致的,不是有序的。

  集合中的元素最大数量为 232 - 1 (4294967295,可容纳超过4十亿元素)。

  5.有序集合。Redis的有序集合类似于Redis的集合,字符串不重复的集合。
   {一个有序集合的每个成员用分数,以便采取有序set命令,从最小的到最大的成员分数有关。虽然成员具有唯一性,但分数可能会重复。什么意思呢?没看明白!}

  2016022603 - redis数据类型

  命令操作总结:

  字符串命令: set key value;get key

  哈希命令: hmset key (name value ...); hgetall key

  列表:lpush key value...; lrange key (beginindex endindex)

  无序集合:  sadd key values...; smembers key

  有序集合: zadd key index value ...; zrangebyscore key (beginindex endindex)