![[我想静静]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_74.d954f2d.png)
Clickhouse Distinct count 查询优化方案,目前官方提供五种去重计数的函数,各有优劣,记录一下:
uniqExact(): 精确去重计数,占用内存和CPU极大,耗时是几个方式中最多的
uniq():近似去重计数,误差率在1%左右,效率比第一种方式要高,目前使用比较多的方式
uniqHLL12():近似去重计数,误差率在5%左右
uniqCombined: 近似去重计数,对非 String 类型使用32位哈希,对于基数显著大于UINT_MAX ,结果将有非常高的误差,此时应该使用 uniqCombined64()
uniqCombined64(): 近似去重计数,与 uniqCombined 类似
uniqExact(): 精确去重计数,占用内存和CPU极大,耗时是几个方式中最多的
uniq():近似去重计数,误差率在1%左右,效率比第一种方式要高,目前使用比较多的方式
uniqHLL12():近似去重计数,误差率在5%左右
uniqCombined: 近似去重计数,对非 String 类型使用32位哈希,对于基数显著大于UINT_MAX ,结果将有非常高的误差,此时应该使用 uniqCombined64()
uniqCombined64(): 近似去重计数,与 uniqCombined 类似
展开
评论
1