使用HyperLogLog 数据结构进行估数(JAVA)
程序员文章站
2022-07-11 08:29:51
...
HyperLogLog 数据结构进行估数,用于统计 如计算网页每天的用户的访问数量UV, 可以解决很多精度要求不是很高的统计问题
package com.ryz2593.happy.study.redis;
import redis.clients.jedis.Jedis;
/**
* HyperLogLog 数据结构进行估数,用于统计 如计算网页每天的用户的访问数量UV
* 可以解决很多精度要求不是很高的统计问题
* @author ryz2593
*/
public class PfTest {
public static void main(String[] args) {
String key = "codehole";
Jedis jedis = new Jedis("localhost");
for (int i = 0; i < 100; i++) {
jedis.pfadd(key, "user" + i);
long total = jedis.pfcount(key);
System.out.printf("%d %d\n", 100, total);
}
jedis.close();
}
}
结果:
100 1
100 2
100 3
...
100 95
100 96
100 97
100 98
100 99
100 99