hll_sketch_estimate
函数
适用于: Databricks SQL Databricks Runtime 13.3 LTS 及更高版本
此函数利用 HyperLogLog 算法来计算给定列中唯一值的数量的概率近似值,使用之前由 hll_sketch_agg 函数生成的称为草图缓冲区的二进制表示形式,并在结果中返回大整数。
hll_union 和 hll_union_agg 函数还可以通过使用并合并这些缓冲区作为输入来将草图组合在一起。
实现使用 Apache Datasketches 库。 有关详细信息,请参阅 HLL。
语法
hll_sketch_estimate ( expr )
参数
expr
:包含 hll_sketch_agg 生成的草图的BINARY
表达式。
返回
一个 BIGINT
值,它是由输入草图表示的近似非重复计数。
示例
> SELECT hll_sketch_estimate(hll_sketch_agg(col, 12))
FROM VALUES (1), (1), (2), (2), (3) tab(col);
3
> SELECT hll_sketch_estimate(hll_sketch_agg(col))
FROM VALUES (1), (1), (2), (2), (3) tab(col);
3