redis7种数据类型
原创
Redis的7种数据类型
Redis是一种开源的、基于内存的键值存储数据库。它提供了多种数据结构来适应不同的需求。以下是Redis赞成的7种数据类型:
1. 字符串(String)
字符串是Redis最基本的数据类型,可以存储任何形式的字符串。一个字符串类型的键最大能存储512MB的内容。
2. 列表(List)
列表是易懂的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
3. 集合(Set)
集合是无序的字符串集合,集合中的元素具有唯一性,不能重复。Redis赞成多个集合之间的交集、并集和差集操作。
4. 哈希(Hash)
哈希是一个键值对集合。Redis的哈希可以存储多达2^32 - 1个字段和字段值。
5. 有序集合(Sorted Set)
有序集合是集合的一种,每个元素都会相关性一个分数。有序集合会选择分数从小到大自动排序,元素具有唯一性。
6. 流(Stream)
流是Redis 5.0引入的一种新的数据类型,用于实现消息队列的功能。流可以看作是一个有序的消息序列,每个消息都有一个唯一的ID。
7. 位图(Bitmap)
位图不是一种实际的数据类型,而是基于字符串类型实现的一种特殊用途的数据结构。位图可以用来存储状态信息,如用户是否在线、用户是否完成某个操作等。
代码示例
// 字符串
SET key value
GET key
// 列表
LPUSH list value1 value2
LRANGE list 0 -1
// 集合
SADD set value1 value2
SMEMBERS set
// 哈希
HSET hash field value
HGET hash field
// 有序集合
ZADD zset score1 value1 score2 value2
ZRANGE zset 0 -1 WITHSCORES
// 流
XADD mystream * field1 value1 field2 value2
XRANGE mystream - +
// 位图
SETBIT bitmap offset value
GETBIT bitmap offset