Redis 的 PFMERGE 命令将多个 HyperLogLog 合并为一个 HyperLogLog 。合并后的 HyperLogLog 的基数估算值是通过对所有给定 HyperLogLog 进行并集计算得出的。
192.168.98.70:6379> PFMERGE destkey sourcekey [sourcekey ...]
参数 | 描述 |
---|---|
destkey | 目标 HyperLogLog 键。 |
sourcekey | 源 HyperLogLog 键。 |
返回 OK。
O(N),N 为合并后的 HyperLogLog 数量。
>= 2.8.9
计算元素之和
192.168.98.70:6379> PFADD haicoder Redis Mongo (integer) 1 192.168.98.70:6379> PFADD hicoder Mysql SqlServer (integer) 1 192.168.98.70:6379> PFMERGE coder haicoder hicoder OK 192.168.98.70:6379> PFCOUNT coder (integer) 4 192.168.98.70:6379> DEL haicoder hicoder coder (integer) 3
我们首先,使用 PFADD 命令,向键为 haicoder 的 HyperLogLog 中插入元素 Redis 和 Mongo。使用 PFADD 命令,向键为 haicoder 的 HyperLogLog 中插入元素 Mysql 和 SqlServer。
接着,我们使用 PFMERGE 命令,将键为 haicoder 的 HyperLogLog 与键为 hicoder 的元素合并到键为 coder 的 HyperLogLog 中。
最后,我们使用 PFCOUNT 命令,获取键为 coder 的 HyperLogLog 的元素数为键为 haicoder 的 HyperLogLog 的元素数与键为 hicoder 的 HyperLogLog 的元素数之和。
Redis 的 PFMERGE 命令将多个 HyperLogLog 合并为一个 HyperLogLog 。合并后的 HyperLogLog 的基数估算值是通过对所有给定 HyperLogLog 进行并集计算得出的。
Redis PFMERGE 命令语法:
192.168.98.70:6379> PFMERGE destkey sourcekey [sourcekey ...]