Redis HyperLogLog常用命令

基数并不是存储元素,存储元素消耗内存空间比较大,而是给某一个有重复元素的数据集合(一般是很大的数据集合)评估需要的空间单元数,所以它没有办法进行存储,加上在工作中用得不多,我们要介绍一下 Redis 的 HyperLogLog 命令。

Redis 的 HyperLogLog 命令
在这里插入图片描述

命令行演示。
在这里插入图片描述

解说:首先往一个键为 h1 的 HyperLogLog 插入元素,让其计算基数,到了第 5 个命令“pfadd h1 a”的时候,由于在此以前已经添加过,所以返回了 0。它的基数集合是 {a,b,c,d},故而求集合长度为 4;之后再添加了第二个基数,它的基数集合是{a,z},所以在 h1 和 h2 合并为 h3 的时候,它的基数集合为 {a,b,c,d,z},所以求取它的基数就是 5。

在 Spring 中操作基数,代码如下所示。

ApplicationContext applicationContext = new ClassPathXmlApplicationcontext("applicationContext.xml");
RedisTemplate redisTemplate = applicationContext.getBean(RedisTemplate.class);
redisTemplate.opsForHyperLogLog().add("HyperLogLog", "a", "b" , "c", "d", "a");
redisTemplate.opsForHyperLogLog().add("HyperLogLog2", "a"); redisTemplate.opsForHyperLogLog().add("HyperLogLog2", "z");
Long size = redisTemplate.opsForHyperLogLog().size("HyperLogLog");
System.err.println(size);
size = redisTemplate.opsForHyperLogLog().size("HyperLogLog2");
System.err.println(size);
redisTemplate.opsForHyperLogLog().union ("des_key","HyperLogLog","HyperLogLog2");
size = redisTemplate.opsForHyperLogLog().size("des_key");
System.err.println(size);

从上面的代码可以看到,增加一个元素到基数中采用 add 方法,它可以是一个或者多个元素,而求基数大小则是采用了 size 方法,合并基数则采用了 union 方法,其第一个是目标基数的 key,然后可以是一到多个 key。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/564090.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大学计算机课程第六章答案,大学计算机网络课程第六章.ppt

大学计算机网络课程第六章.ppt第6章 文件管理 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.1 文件的概念 6.2 目录结构 6.2 目录结构 6.2 目录结构 6.2 目录结…

德州计算机速成班培训,德州办公软件培训速成班

德州办公软件培训速成班?公文管理主要负责公文的发送与接收工作,发送流程按照流程定制来完成,所以还包括流程定制功能。这三大块是OA的核心部分,实现也为复杂,特别是流程定制功能,是一个非常灵活的模块&…

Redis的基础事务

Redis 存在事务,尽管它没有数据库那么强大,但是它还是很有用的,尤其是在那些需要高并发的网站当中。 使用 Redis 读/写数据要比数据库快得多,如果使用 Redis 事务在某种场合下去替代数据库事务,则可以在保证数据一致性…

音乐美术计算机在中考,2022年音乐、美术进中考?教育部最新回应...

原标题:2022年音乐、美术进中考?教育部最新回应...国务院日前印发《关于全面加强和改进新时代学校体育工作的意见》和《关于全面加强和改进新时代学校美育工作的意见》。10月16日,在教育部新闻发布会上,教育部体育卫生与艺术教育司…

Redis事务回滚深入

对于 Redis 而言,不单单需要注意其事务处理的过程,其回滚的能力也和数据库不太一样,这也是需要特别注意的一个问题——Redis 事务遇到的命令格式正确而数据类型不符合,如图所示。 从图中可知,我们将 key1 设置为字符串…

计算机辅助设计的发展及应用,计算机辅助设计的发展与应用

计算机维普资讯 http://doc.xuehai.net第 1卷第 34 2、期19 98年 9月株洲工学院学报V 11 o34 o 2N .、 .J OURNAL OF HUZ Z HOU NS TUTE OF TEC I TI HNOL OGY S p 1 9 e .98⑦计算机辅助设计的发展与应用7摘要廖建勇(洲工学院株株洲 420) 1 0 87讨论计算机辅助设计( AD) c技术…

Java 画圆

Java控制台画圆 画空心圆 完整代码: //空心圆 import java.util.Scanner; class circle2 { public static void main(String[] args) { new circle2().print();} //画圆函数void print() {System.out.println("输入半径:"); Sca…

智能控制和计算机控制的区别,解析智能控制技术是什么及与传统控制的区别

描述智能控制是什么智能控制(intelligent controls)在无人干预的情况下能自主地驱动智能机器实现控制目标的自动控制技术。对许多复杂的系统,难以建立有效的数学模型和用常规的控制理论去进行定量计算和分析,而必须采用定量方法与定性方法相结合的控制方…

C++ 画直线

使用C画直线 完整代码 #include "graphics.h" int main() {int driver,mode,i;float x0,y0,y1,x1;float j12,k;driverVGA;modeVGAHI;initgraph(&driver,&mode,"");setbkcolor(GREEN);x0263;y0263;y1275;x1275;for(i0;i<18;i){setcolor(5);lin…

计算机系统性错误,《深入理解计算机系统-异常》

现代操作系统通过使控制流发生突变来对某些意外情况(磁盘读写数据准备就绪、硬件定时器产生信号等)做出反应。一般而言&#xff0c;我们把这些突变命名为异常控制流(Exceptional Contral Flow ECF)。异常控制流发生在计算机系统的各个层次。比如&#xff0c;在硬件层&#xff0…

C 画矩形

使用C画矩形 使用C语言的相关知识在控制台输出一个矩形。 完整代码 #include "graphics.h" int main() {int x0,y0,y1,x1,driver,mode,i;driverVGA;modeVGAHI;initgraph(&driver,&mode,"");setbkcolor(YELLOW);x0263;y0263;y1275;x1275;for(i0;…

中职计算机组成原理期末,计组期末复习

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼(1)阶码和尾数均为原码。(2)阶码和尾数均为补码。(3)阶码为移码&#xff0c;尾数为补码。解&#xff1a;据题意画出该浮点数的格式&#xff1a;阶符1位阶码4位数符1位尾数10位将十进制数转换为二进制: x1 -27/1024-0.0000011011B …

C++ 画圆

C画圆 使用C技术在控制台输出一个圆形。 完整代码 # define PAI 3.1415926 # define B 0.809 # include "graphics.h" #include "math.h" int main() {int i,j,k,x0,y0,x,y,driver,mode;float a;driverCGA;modeCGAC0;initgraph(&driver,&mode,&…

C 画图

使用C语言画图 使用C语言相关知识画图。 完整代码 #include "graphics.h" #define LEFT 0 #define TOP 0 #define RIGHT 639 #define BOTTOM 479 #define LINES 400 #define MAXCOLOR 15 int main() {int driver,mode,error;int x1,y1;int x2,y2;int dx1,dy1,dx2,…

计算机基础 英文版本,计算机基础,全英文版的.ppt

“Introduction to Computer Science”;“Introduction to Computer Science”;Contents;Chapter 1 Computers and digital basics ;Section A all things digital;A computer network is a group of computers linked by wired or wireless technology to share data and reso…

C 杨辉三角形

使用C语言实现杨辉三角形 C语言使用循坏输出10行的杨辉三角形。 完整代码&#xff1a; #include <stdio.h>int main() {int i,j;int a[10][10];printf("\n");for(i0;i<10;i) {a[i][0]1;a[i][i]1;}for(i2;i<10;i)for(j1;j<i;j)a[i][j]a[i-1][j-1]a[…

计算机项目开发流程,产品开发项目建议流程图怎样画

产品开发项目建议流程图怎样画2019-01-14 10:30:270点赞3收藏0评论每一个新产品即将问世的时候会对其进行一系列的测试&#xff0c;测试的结果以及需要更改的地方我们会用表格将其整理起来&#xff0c;流程图就是一个比较实用的图表&#xff0c;可以清晰的看到整件事情的操作流…

C 画点

C语言画点 使用C语言画点。 完整代码 #include "stdio.h" #include "graphics.h" int main() {int i,j,driverVGA,modeVGAHI;initgraph(&driver,&mode,"");setbkcolor(YELLOW);for(i50;i<230;i20)for(j50;j<230;j)putpixel(i,j…

C 画椭圆

C语言画圆 使用C语言画椭圆。 完整代码 #include "stdio.h" #include "graphics.h" #include "conio.h" int main() {int x360,y160,driverVGA,modeVGAHI;int num20,i;int top,bottom;initgraph(&driver,&mode,"");topy-30…

没有检测到磁盘 请关闭计算机并至少,【基本计算机问题】计算机不是遇到非常严重的问题,请看这里解答...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼5. 启动计算机时出现“Invalid Boot.ini”(无效 Boot.ini)或“Windows could not start”(Windows 无法启动)错误信息Invalid Boot.ini Windows could not start because the following file is missing or corrupt:Windows\System…