Redis学习之路(redis数据类型)

Redis提供多种数据类型,如字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(zset)、HyperLogLog和地理位置(GEO)。字符串是基本类型,支持二进制安全存储;哈希用于存储键值对,适合存储对象;列表允许在两端添加元素,底层为链表;集合是无序的字符串集合;有序集合按分数排序;HyperLogLog用于基数统计;GEO支持地理位置查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis的数据类型

1、string(字符串)

string是redis最基本的类型,一个key对应一个value。
string类型是二进制安全的(意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象)
string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M。

2、hash(哈希,类似java里的Map)

Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象

3、list(列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
它的底层实际是个链表

4、set(集合)

Redis的Set是string类型的无序集合。它是通过HashTable实现的。

5、zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。

6、HyperLogLog

Redis 在 2.8.9 版本添加了 HyperLogLog 结构
Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的。
在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素越多耗费内存就越多的集合形成鲜明对比。
但是,因为 HyperLogLog 只会根据输入元素来计算基数,而不会储存输入元素本身,所以 HyperLogLog 不能像集合那样,返回输入的各个元素。

7、GEO(地理位置)

Redis 在 3.2.0 版本添加了 HyperLogLog 结构
将指定的地理空间位置(纬度、经度、名称)添加到指定的key中。
这些数据将会存储到sorted set中,这样的目的是为了方便使用GEORADIUS或者GEORADIUSBYMEMBER命令对数据进行半径查询等操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值