三、高级数据类型
1、 Bitmaps
bitmaps本质上还是String字符串,特殊的是它可以对字符串进行位操作(每个位只存储0和1),bitmaps提供了一套与String不同的操作方式,可以用于对活跃用户的统计(将用户ID当作bitmaps的迁移量)
2、HyperLogLog
HyperLogLog可以实现基数统计,即统计去重后的数量,例如UV、IP个数、搜索记录数等,当然,这些功能Redis中的Set、Hash、Bitmaps也可以实现,但是在数据量较大时,考虑到存储空间的开销,HyperLogLog更实用。
3、Geospatial
Geospatial(地理信息的缩写),是元素的二维坐标,在地图上就是经纬度,Redis提供了基于该类型的经纬度设置、查询、距离查询、范围查询等操作。
四、订阅和发布
Redis提供了消息的订阅和发布功能,发布者发布信息,订阅者接收信息,Redis客户端可以订阅任意数量的频道。
在客户端1上操作
#订阅channel1频道
subscribe channel1
在客户端2上操作
#通过频道channel1发布信息
publish channel1 hello
客户端1收到的信息
"message"
"channel1"
"hello"