redis的bitmap能设置最大的长度是多少, 为什么可以设置的最大长度位数是2^32, 怎么计算bitmap会占用多大的空间

前提:  实际上, redis只支持5种数据类型. 并没有bitmap. 也就是bitmap是基于redis的字符串类型的. 而一个字符串类型最多存储512M.

首先: 计算机的单位换算先了解下

         8 bit = 1byte  

         1024 byte = 1kb

         1024 kb = 1Mb

其次:

      我们使用的bitmap指令SETBIT  key  offset value, 这个指令就是将第offset设置成0或1.  比如 SETBIT  ss  1000 1 //就是将1000位置为1.  1 bit就是1位,  所以我们只要将512M换算成bit, 那么就知道bitmap支持的最大设置长度了.  计算如下

      8 * 1024 * 1024 * 512  =  2^32    (所以这个结果就是这么来的) 

 

怎么计算自己的bitmap会大概占用多大的存储空间呢?  

举个栗子: 今有一个bitmap最大长度1024, 需要占用多大的空间?

解: 长度1024也就是他需要1024个位(bit),  或者单位为byte就是需要 1024 / 8, 即需要128byte

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值