redis存储数据的结构
原创
Redis存储数据的结构
Redis是一种开源的、基于内存的键值存储数据库,它提供了多种数据结构来存储和操作数据。以下是Redis中常见的数据结构及其用途。
字符串(String)
字符串是Redis中最基本的数据结构,用于存储简洁的键值对。字符串类型的值最大可以存储512MB的数据。
SET key value
GET key
列表(List)
列表是按照插入顺序排序的字符串元素集合。它可以用作栈或队列等数据结构。
LPUSH key value1 value2 ...
RPUSH key value1 value2 ...
LPOP key
RPOP key
LRANGE key start stop
集合(Set)
集合是无序的、不重复的字符串元素集合。它核心用于存储唯一元素,赞成集合间的操作。
SADD key member1 member2 ...
SMEMBERS key
SINTER key1 key2
SUNION key1 key2
有序集合(Sorted Set)
有序集合是集合的一种扩展,每个元素都会相关性一个分数(score),元素选用分数自动排序。
ZADD key score1 member1 score2 member2 ...
ZRANGE key start stop
ZRANGEBYSCORE key min max
哈希(Hash)
哈希是一种键值对集合,特别适合存储对象。它将对象的所有字段存储为一个哈希表。
HSET key field1 value1 field2 value2 ...
HGET key field
HGETALL key
位图(Bitmap)
位图不是实际的数据结构,而是通过特殊的命令将字符串作为位数组进行操作。它适用于存储布尔值。
SETBIT key offset value
GETBIT key offset
BITCOUNT key
HyperLogLog
HyperLogLog是一种概率数据结构,用于估计集合的基数(不重复元素的数量)。它的空间错综度非常低。
PFADD key element1 element2 ...
PFCOUNT key
Geo
Geo是Redis 3.2版本引入的地理空间数据结构,用于存储地理位置信息,赞成地理空间查询。
GEOADD key longitude latitude member
GEODIST key member1 member2
GEORADIUS key longitude latitude radius