hll_sketch_estimate 函数

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime 13.3 LTS 及更高版本

此函数利用 HyperLogLog 算法来计算给定列中唯一值的数量的概率近似值,使用之前由 hll_sketch_agg 函数生成的称为草图缓冲区的二进制表示形式,并在结果中返回大整数。

hll_unionhll_union_agg 函数还可以通过使用并合并这些缓冲区作为输入来将草图组合在一起。

实现使用 Apache Datasketches 库。 有关详细信息,请参阅 HLL

语法

hll_sketch_estimate ( expr )

参数

返回

一个 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