hll_sketch_agg
função agregar
Aplica-se a: Databricks SQL
Databricks Runtime 13.3 LTS e superior
Esta função utiliza o algoritmo HyperLogLog para contar uma aproximação probabilística do número de valores exclusivos em uma determinada coluna e produz o resultado como uma representação binária conhecida como buffer de esboço. Esta representação binária é adequada para persistência.
As consultas podem usar os buffers resultantes para calcular contagens exclusivas aproximadas com a função hll_sketch_estimate .
As funções hll_union e hll_union_agg também podem combinar esboços consumindo e mesclando esses buffers como entradas.
A implementação usa a biblioteca Apache Datasketches. Consulte HLL para obter mais informações.
Sintaxe
hll_sketch_agg ( expr [, lgConfigK ] )
Esta função também pode ser invocada como uma função de janela usando a cláusula OVER
.
Argumentos
-
expr
: Uma expressão do tipoINT
,BIGINT
,STRING
, ouBINARY
contra a qual ocorrerá uma contagem única. -
lgConfigK
: Uma constante opcionalINT
entre 4 e 21 inclusive com padrão 12. O logaritmo de base 2 de K, onde K é o número de compartimentos ou slots para o esboço.
Qualquer NULL
entrada expr
é ignorada.
Devoluções
Um buffer nãoNULL
BINARY
contendo o esboço do HyperLogLog calculado como resultado do consumo e da agregação de todos os valores de entrada no grupo de agregação.
Exemplos
> 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