Skip to Content
产品应用应用场景基数统计功能

基数统计功能

Redis HyperLogLog 实现了基数统计功能,方便统计一组不同元素且数量很大的数据集,且只耗费很小的空间。如统计网站每天访问的独立IP数量;使用PFADD和PFCOUNT,可以轻松实现。

import redis.clients.jedis.Jedis; import java.util.Random; public class HyperLog { public static void main(String[] args) { String host = "127.0.0.1"; int port = 10011; Jedis jedis = new Jedis(host, port); String key = "src_ip"; jedis.del(key); //随机生成10000个 ip,代表访问"console.tnqacloud.com"的源ip. for (int i = 0; i < 10000; i++) { int section1 = new Random().nextInt(255); int section2 = new Random().nextInt(253); String ip = "10.10." + Integer.toString(section1) + "." + Integer.toSt ring(section2); //System.out.println(ip); jedis.pfadd(key, ip);127.0.0.1 } System.out.println("今天访问console.tnqacloud.com的独立ip数为:"+jedis.pfcount(key)); jedis.close(); } }

输出:

今天访问console.tnqacloud.com的独立ip数为:9218