redis-高级数据类型

Redis-高级数据类型

一、Bitmaps
说明:
按位存储数据的操作,存入的value只支持0|1。
应用场景:
适合数据统计
命令:
1、getbit key offset (获取指定key对应偏移量上的bit值;若offset或key不存在,则返回的都是0)
2、setbit key offset value (设置指定key对应偏移量上的bit值,value只能是1或0;偏移量比较大会返回操作的时间)
扩展操作:
1、bitop op destkey key1 key2 (对key指定位进行交、并、非、异或操作,并将结果保存到destkey中)
and:交, or:并, not:非, xor:异或操作,并将结果保存到destkey中)
2、bicount key {start end] (统计指定key中start到end位中1的数量)

二、HyperLogLog
说明:
统计不重复的数据的数量。统计基数(去重后的数据)。
注意事项:
1、只做统计,不会保存数据。
2、数据量大时统计出的结果有0.81%的误差
3、pfadd命令不是一次性分配12K,是随着基数增加而逐渐增大
4、pfmerge合并后的存储空间为12K,无论合并前的数据量是多少
优点:
消耗空间极小,每个hyperloglog key仅占用12K的内存用于标记基数
命令:
1、pfadd key element element (添加数据)
2、pfcount key key (统计数据)
3、pfmerge destkey sourcekey sourcekey (合并数据)

三、GEO
说明:
进行地址计算,计算点与点之间的关系
应用场景:
如社交软件附近的人,外卖软件,地图软件等
注意事项:
只做水平位置计算,不进行垂直海拔计算
命令:
1、geoadd key longitude latitude member [longitude latitude member …] (添加坐标至key容器,member坐标名称,longitude横坐标,latitude纵坐标)
2、geopos key member (获取member的坐标)
3、geodist key member1 member2 unit(获取member1和member2间的距离,unit为返回值单位,支持m米,km千米)
4、georadius key longitude latitude radius m|km|ft|mi [withcoord][withdist] [withhash][count count] (根据坐标求范围内的数据)
5、georadiusbymember key member radius m|km|ft|mi [withcoord][withdist] [withhash][count count] (根据点求范围内数据)
6、geohash key member [member …] (求指定点对应的坐标hash值)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值