hll_sketch_agg statistische functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 13.3 LTS en hoger

Deze functie maakt gebruik van het HyperLogLog-algoritme om een probabilistische benadering van het aantal unieke waarden in een bepaalde kolom te tellen en voert het resultaat uit als een binaire weergave die bekend staat als een schetsbuffer. Deze binaire weergave is geschikt voor persistentie.

Query's kunnen de resulterende buffers gebruiken om geschatte unieke aantallen te berekenen met de functie hll_sketch_estimate .

De functies hll_union en hll_union_agg kunnen ook schetsen combineren door deze buffers als invoer te gebruiken en samen te voegen.

De implementatie maakt gebruik van de Apache Datasketches-bibliotheek. Zie HLL voor meer informatie.

Syntaxis

hll_sketch_agg ( expr [, lgConfigK ] )

Deze functie kan ook worden aangeroepen als een vensterfunctie met behulp van de OVER component.

Argumenten

  • expr: een expressie van het typeINT, BIGINT, of BINARYSTRINGwaarmee uniek wordt geteld.
  • lgConfigK: Een optionele INT constante tussen 4 en 21 inclusief met standaard 12. De log-base-2 van K, waarbij K het aantal buckets of sleuven voor de schets is.

expr Alles NULL wordt genegeerd.

Retouren

Een niet-buffer die de HyperLogLog-schetsNULLBINARY bevat, berekend als gevolg van het verbruik en samenvoegen van alle invoerwaarden in de aggregatiegroep.

Voorbeelden

> 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