hll_sketch_agg
聚合函數
適用於: Databricks SQL Databricks Runtime 13.3 LTS 和更新版本
此函式會 利用 HyperLogLog 演演算法來計算指定數據行中唯一值數目的概率近似值,並將結果輸出為稱為草圖緩衝區的二進位表示法。 此二進位表示法適用於持續性。
查詢可以使用產生的緩衝區,利用 hll_sketch_estimate 函式來計算近似的唯一 計數。
hll_union和hll_union_agg函式也可以藉由取用和合併這些緩衝區作為輸入,將草圖結合在一起。
實作會使用 Apache Datasketches 連結庫。 如需詳細資訊,請參閱 HLL 。
語法
hll_sketch_agg ( expr [, lgConfigK ] )
您也可以使用 子句,將此函式叫用OVER
為視窗函式。
引數
expr
:發生唯一計數的 、BIGINT
、STRING
或BINARY
類型的INT
運算式。lgConfigK
:4 到 21 之間的選擇性INT
常數,包含預設值 12。 K 的 log-base-2,其中 K 是草圖的貯體或位置數目。
忽略任何 NULL
中的 expr
。
傳回
NULL
BINARY
非緩衝區,其中包含計算為匯總群組中所有輸入值而計算的 HyperLogLog 草圖。
範例
> 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