hll_sketch_agg agregační funkce

Platí pro:zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 13.3 LTS a vyšší

Tato funkce využívá algoritmus HyperLogLog ke spočítání pravděpodobnostní aproximace počtu jedinečných values v daném columna výsledek vypíše jako binární reprezentaci známou jako vyrovnávací paměť skicy. Tato binární reprezentace je vhodná pro trvalost.

Dotazy můžou použít výsledné vyrovnávací paměti k výpočtu přibližných jedinečných počtů pomocí funkce hll_sketch_estimate .

Funkce hll_union a hll_union_agg můžou také kombinovat skicy dohromady tím, že tyto vyrovnávací paměti spotřebovávají a slučují jako vstupy.

Implementace používá knihovnu Apache Datasketches. Další informace najdete v HLL.

Syntaxe

hll_sketch_agg ( expr [, lgConfigK ] )

Tuto funkci lze také vyvolat jako funkci window pomocí klauzule OVER.

Argumenty

  • expr: Výraz typu INT, , BIGINTnebo STRINGBINARY proti kterému dojde k jedinečnému počítání.
  • lgConfigK: Volitelná INT konstanta mezi 4 a 21 včetně s výchozí hodnotou 12. Logaritmus základu 2 z K, where K je počet kbelíků nebo slotů pro náčrt.

Jakýkoliv NULL in expr je ignorován.

Návraty

Vyrovnávací paměť, která neníNULLBINARY a obsahuje náčrt HyperLogLogu, vzniklý v důsledku zpracování a agregace všech vstupních values ve skupině pro agregaci.

Příklady

> 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