Função hll_union
Aplica-se a: SQL do Databricks
Databricks Runtime 13.3 LTS e versões posteriores
Essa função utiliza o algoritmo HyperLogLog para combinar dois esboços em apenas um.
As consultas podem usar os buffers resultantes para calcular contagens exclusivas aproximadas como inteiros longos com a função hll_sketch_estimate.
A implementação usa a biblioteca Apache Datasketches. Confira HLL para obter mais informações.
Sintaxe
hll_union ( expr1, expr2 [, allowDifferentLgConfigK ] )
Argumentos
exprN
: uma expressãoBINARY
segurando um esboço gerado por hll_sketch_agg.allowDifferentLgConfigK
: uma expressãoBOOLEAN
opcional que controla se deve ser permitida a mesclagem de dois esboços com valores lgConfigK diferentes. O valor padrão é falso.
Retornos
Um buffer BINARY
que contém o esboço do HyperLogLog calculado como resultado da combinação das expressões de entrada.
Quando o parâmetro allowDifferentLgConfigK
é true, o esboço de resultado usa o menor dos dois valores lgConfigK
fornecidos.
Exemplos
> SELECT hll_sketch_estimate(
hll_union(
hll_sketch_agg(col1),
hll_sketch_agg(col2)))
FROM VALUES
(1, 4),
(1, 4),
(2, 5),
(2, 5),
(3, 6) AS tab(col1, col2);
6
> SELECT hll_sketch_estimate(
hll_union(
hll_sketch_agg(col1, 4),
hll_sketch_agg(col2, 21)))
FROM VALUES
(1, 4),
(1, 4),
(2, 5),
(2, 5),
(3, 6) AS tab(col1, col2);
error