Compartir a través de


hll_sketch_agg (función de agregado)

Se aplica a: casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 13.3 LTS y versiones posteriores

Esta función utiliza el algoritmo HyperLogLog para contar una aproximación probabilística del número de valores únicos en una columna determinada y genera el resultado como una representación binaria conocida como búfer de croquis. Esta representación binaria es adecuada para la persistencia.

Las consultas pueden usar los búferes resultantes para calcular recuentos únicos aproximados con la función hll_sketch_estimate.

Las funciones hll_union y hll_union_agg también pueden combinar bocetos mediante el consumo y combinación de estos búferes como entradas.

La implementación usa la Biblioteca Apache Datasketches. Para obtener más información, consulte HLL.

Sintaxis

hll_sketch_agg ( expr [, lgConfigK ] )

Esta función también se puede invocar como una función de ventana mediante la cláusula OVER.

Argumentos

  • expr: expresión de tipo INT, BIGINT, STRINGo con BINARY la que se producirá un recuento único.
  • lgConfigK: una constante opcional INT entre 4 y 21 inclusive con el valor predeterminado 12. El log-base-2 de K, donde K es el número de cubos o ranuras para el croquis.

Cualquier NULL en expr se omite.

Devoluciones

Un búferNULLBINARY que no contiene el boceto de HyperLogLog calculado como resultado de consumir y agregar todos los valores de entrada del grupo de agregación.

Ejemplos

> 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