Redis
Redis 在这件事上很像工程工具箱,因为它把常见 sketch 直接做成了接口。HyperLogLog 对应 PFADD、PFCOUNT、PFMERGE,拿来估 distinct count 很顺手;Bloom Filter 回答“可能存在吗”;Cuckoo Filter 多了删除;Count-Min Sketch 估频率,但结果会偏高;t-digest 处理 percentile 和 quantile;Top-K 维护当前最热的元素。
从教学角度看,Redis 的价值在于它把抽象算法翻译成了非常直接的系统接口,因此你能很快感受到这些结构为什么适合线上服务:它们占用空间小、更新快、能容忍少量误差,而且非常适合被部署在高吞吐场景里。