当前位置: 首页 > news >正文

济南制作网站企业保险公司网站建设方案

济南制作网站企业,保险公司网站建设方案,电子商务网站开发费用,广州优化网站推广目录 背景 结构 存取方式 统计和查找 背景 开发过程中,会有布尔类型的存储,比如记录一个用户一年365天的签到情况,如果每天都要有一个布尔变量,多个用户,亦或者使用k-v形式,上亿用户的话这个存储量是惊…

目录

背景

结构

存取方式

统计和查找


背景

开发过程中,会有布尔类型的存储,比如记录一个用户一年365天的签到情况,如果每天都要有一个布尔变量,多个用户,亦或者使用k-v形式,上亿用户的话这个存储量是惊人的。所以Redis的位图应运而生。

一个值占一个位,365天也就是365位,46个字符,也就是一个长点的字符串,大大节省了内存空间。

结构

它并不是一种类似于队列等的特殊的数据结构,内容其实就是普通的字符串,按二进制位数来说,也是就byte数组,可以使用,get,set索引来直接获取或者设置整个位图的内容。

Redis的为数组是自动扩展的,如果偏移位置超出了反胃,会自动扩容。

直接把字符串设置为“hello”,

hello的ASCⅡ码 :
>>> bin(ord(' h '))
'0b1101000'
# 高位 -> 低位
>>> bin(ord(' e '))
'0b1100101'
>>> bin(ord(' l '))
'0b1101100'
>>> bin(ord(' l '))
'0b1101100'
>>> bin(ord(' o '))
'0b1101111'

 注意都是八位。

设置一下一个字符串的位,只需要设置值为1 的位即可

127.0.0.1:6379> setbit s 1 1
(integer) 0
127.0.0.1:6379> setbit s 2 1
(integer) 0
127.0.0.1:6379> setbit s 4 1
(integer) 0
127.0.0.1:6379> setbit s 9 1
(integer) 0
127.0.0.1:6379> setbit s 10 1
(integer) 0
127.0.0.1:6379> setbit s 13 1
(integer) 0
127.0.0.1:6379> setbit s 15 1
(integer) 0
127.0.0.1:6379> get s
"he"

 h 只有 1 2 4位是1,e是 9 10 13 15位是1 (两个字符,16位 )直接得到便是一个“he”的字符串

存取方式

以上的例子可以理解为零存整取,还有零存零取,整存零取,零存就是向上面那样一位一位对位置进行设置。整存就是把字符串一次性填充所有位数组,覆盖旧值。

看完位图的结构和存储之后,我们存下来是为了获得统计数量,完成我们所需要的需求。

统计和查找

Redis提供了位图指令:bitcount 和 bitpos,

bitcount用来统计指定位置范围内1的个数,

bitpos 用来查找指定范围内出现的第一个0 或 1 

后面参数[start, end] 但是这两个参数都是以8字节位单位的,也就是说,0, 1是指第一个开始第二个字节结束,范围实际上是前十六位。

127.0.0.1:6379> set w hello
OK
127.0.0.1:6379> bitcount w
(integer) 21
127.0.0.1:6379> bitcount w 0 0 # 第一个字符中 1 的位数
(integer) 3
127.0.0.1:6379> bitcount w 0 1 # 前两个字符中 1 的位数
(integer) 7
   
127.0.0.1:6379> bitpos w 0 # 第一个 0 位
(integer) 0
127.0.0.1:6379> bitpos w 1 # 第一个 1 位
(integer) 1
127.0.0.1:6379> bitpos w 1 1 1 # 从第二个字符算起,第一个 1 位
(integer) 9
127.0.0.1:6379> bitpos w 1 2 2 # 从第三个字符算起,第一个 1 位
(integer) 17
http://www.yayakq.cn/news/831209/

相关文章:

  • 成都设计网站的公司名称做网站公司什么条件
  • 优惠券的网站制作手机网站返回跳转页面
  • 小程序网站wordpress 首页置顶
  • 网站域名 格式免费个人网站在线制作
  • 做dna胎儿亲子鉴定网站哈尔滨哪里有制作网页的
  • 重庆没建网站的企业浙江建设网官网
  • 二合一收款码免费制作网站优化网站最好的刷排名软件
  • 做图片视频的网站伊春北京网站建设
  • 做第三方库个人网站做淘客网站用什么程序
  • 做企业网站要怎么设计方案r语言网站开发
  • 福州网站制作策划手机网站头部图片怎么做
  • 广东seo网站优化公司创建一个公司需要多少钱
  • 巴南网站建设开发app软件的公司有哪些
  • 网站开发中视屏怎样编辑到网页上如何创建自己的小程序
  • 做网站客户需要提供的资料网站抄袭
  • 网站运营与推广论文ps做网站网页好吗
  • 怎么把网站放到阿里云昆明做网站建设公司
  • 自已做的网站怎么做域名解析东莞有多少个镇
  • 长清治做网站页面设计费用
  • 许昌做网站团队小网站搜什么关键词
  • 实验室网站建设方案如何制作自己的二维码
  • 星子县网站建站公司想找可以在家做的手工活去什么网站
  • discuz做电影网站宿州做网站公司
  • 商城网站建设预算要多少钱大学做视频网站
  • 建设好网站网站标题第一个词
  • 如何优化网站目录结构两学一做教育网站
  • 淘客的手机网站wordpress采集网址
  • 国际站wap端流量广州知名网站设计
  • 建设一个门户网站价格wordpress教程 下载地址
  • asp做网站策划书网上代做论文的网站