Partilhar via


hll_sketch_agg função agregar

Aplica-se a: Marque Sim Databricks SQL Marque Sim 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 OVER cláusula.

Argumentos

  • expr: Uma expressão do tipo INT, BIGINT, STRING, ou BINARY contra a qual ocorrerá uma contagem única.
  • lgConfigK: Uma constante opcional INT entre 4 e 21 inclusive com padrão 12. O log-base-2 de K, onde K é o número de buckets ou slots para o esboço.

Qualquer NULL entrada expr é ignorada.

Devoluções

Um não-bufferNULL 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