-
字符串(string):普通字符串,Redis中最简单的数据类型
-
哈希(hash):也叫散列,类似于Java中的HashMap结构
-
列表(list):按照插入顺序排序,可以有重复元素,类似于Java中的LinkedList
-
集合(set):无序集合,没有重复元素,类似于Java中的HashSet
-
有序集合(sorted set/zset):集合中每个元素关联一个分数(score),根据分数升序排序,没有重复元素
三种特殊类型
除了五大基本类型外,redis还提供了三大特殊类型。
Geo地理位置
- 实现诸如附近位置、摇一摇这类依赖于地理位置信息的功能。geo的数据类型为zset。
- GEO 的数据结构总共有六个常用命令:geoadd、geopos、geodist、georadius、georadiusbymember、gethash
- 有效的经度介于-180-180度之间,有效的纬度介于-85.05112878 度至 85.05112878 度之间。
HyperLogLog
- HyperLogLog 是用来做基数统计的算法
- 每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基数。
- HyperLogLog是一种算法,它提供了不精确的去重计数方案,它大概有0.81%的错误率。
BitMap位图
- BitMap 就是通过一个 bit 位来表示某个元素对应的值或者状态, 其中的 key 就是对应元素本身
- 实际上底层也是通过对字符串的操作来实现。
- bit位只能为0或1