Redis *** 作数据常用命令详细注释

Redis *** 作数据常用命令详细注释,第1张

​ 使用help查询有哪些命令

​ 示例所有Key名都为bigkang为示例

​ 首先我们需要了解什么是Bit,其实所有的Bit *** 作都是在 *** 作字符串类型,我们设置了bit以后可以发现他的类型其实是一个String

​ 然后我们来获取这个bit的类型

​ 那么我们就会发现其实存储的数据是一个字符串,那么字符串和bit有什么关系呢,我们知道Redis中的字符串底层采用的SDS,实际上它存储的一个char数组,那么这个char数组,那么C语言中一个char等于1个byte,一个byte等于8个bit,我们可以知道一个char能够存储8个bit,那么Redis的String能够存储512MB,那么我们再来看一下最大能够存储多少个bit位:

​ 最大存储数量

​ 512 * 1024 * 1024 * 8 =42 9496 7296 (大约43亿)

​ MB KB ByteBIit

​ 我们就能够存储大约43亿bit,每个bit的值只能是0 或樱信者 1

​ 我们上访的 *** 作 setbit newbit 1 1 就是将bit位为1,也就是第二个bit设置为1,bit为数组

​ 大概的流程图如下:

​ 这样我们就可以知道bit位在 0 - 7的属于第一个字节,8 - 15属于第二个字节,那么我们现在来测试一下吧

​ 例如我们想要获取某个bit位的值,我们使用getbit

​ BitCount可以统计我们的Bit数组中的值为1的数据,例如我想要统计bit位的值的结果有多少。(!注意是根据一个char,也就是一个byte=8bit进行统计,每个值表示相应的8个bit)

​ 如下

​ 或者根据范围进行统计携大

​ Bit主要用来帮助我们对不同Bit进行 *** 作,和Set中的并集,并归等类似。

​ 现在我们来初始化两个bit数据

​ 目前两个Bit中的结构如下

​ 那么我们知道既然是二进制,那么肯定是有运算的,例如与,或等等

​ Redis提供了如下几种

​ AND

​ OR

​ NOT

​ XOR

​ Bit *** 作可以帮助我们存储大量的数据,以及状态,我们可以在多个场景下使用,例如用户的连续登录,辩颂竖以及活跃用户统计。

​ 例如如下 *** 作,我们的Key采用 login-年-月-日 ,bit位 使用用户ID,状态为1

新建一个文本文件,包含redis命令。redis是一个内存数据库, 因此数据基本上都存在于内存当中,保证放入redis数据成功需要新建一个闭胡文本文件,包含redis命令。Redis是一个开源的使用ANSIC语言编写做态袜、支持网络、可基于内存亦可持纯激久化的日志型、Key-Value数据库,并提供多种语言的API。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11996414.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存