redis图形化界面 redis位图使用 |
您所在的位置:网站首页 › ege图形库做界面案例 › redis图形化界面 redis位图使用 |
简介: 操作位图,就是操作二进制文件,类似于java中的位运算,这样做的好处,一个是效率高,另一个是节约空间,相比于字符串,效果是很明显的。 说一个的案例,一个用户一年的签到记录,如果用Sring类型存储,那么就需要365个key/value。那如果使用位图的话,假设网站上线第一天,这个人签到了就存1,没签到就存0,那么就是1101010101。。。。。 每天的的记录占一个位,365天就是365个位,也就是46个字节,这样有效的节省了存储空间,如果要统计用户签到的天数,只需要统计1的个数。 位图的操作,可以直接操作对应的字符串(get/set),或者直接操作位(getbit/setbit) 基本操作: 1.零存整取:操作的时候用位操作,获取的时候获取字符串 例如存一个java 字符 ASCII 二进制 j 74 01001010 a 77 01100001 v 118 01110110 接下来去存储 存java:默认是0,所以只存1 setbit name 1 1 setbit name 4 1 setbit name 6 1 setbit name 9 1 setbit name 10 1 setbit name 15 1 setbit name 17 1 setbit name 18 1 setbit name 19 1 setbit name 21 1 setbit name 22 1 setbit name 25 1 setbit name 26 1 setbit name 31 1 取java: get name 2.整存零取:操作的时候用字符串操作,获取的时候用位获取 存字符串: set k1 java 取: 3.零存零取 统计: 1的个数表示签到的天数,0表示没有签到 用bitcount key命令 bitpos也是统计,不过是范围统计,比在指定范围内出现的第一个零或者一。如统计这个用户在某个时间段的签到次数 bit的批处理 在redis新加的功能,bitfiled命令 例如:bitfiled name get u4 0:表示获取name中的位,从零开始,获取4个位,返回一个无符号数字。 bitfiled name get i4 0:表示获取name中的位,从零开始,获取4个位,返回一个有符号数字。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |