Funkce hll_union_agg
Platí pro: Databricks SQL Databricks Runtime 13.3 LTS a vyšší
Tato funkce využívá algoritmus HyperLogLog ke kombinování skupiny skic do jednoho.
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 .
Implementace používá knihovnu Apache Datasketches. Další informace najdete v HLL.
Syntaxe
hll_union_agg ( expr [, allowDifferentLgConfigK ] )
Tuto funkci lze také vyvolat jako funkci okna pomocí OVER
klauzule.
Argumenty
expr
: VýrazBINARY
s náčrtkem vygenerovaným hll_sketch_agg.allowDifferentLgConfigK
: VolitelnýBOOLEAN
konstantní výraz, který určuje, zda povolit sloučení skic s různými hodnotami lgConfigK. Výchozí hodnota je false.
Návraty
Vyrovnávací BINARY
paměť obsahující skicu HyperLogu vypočítanou v důsledku kombinování vstupních výrazů stejné skupiny.
allowDifferentLgConfigK
Pokud je parametr pravdivý, použije skica výsledku menší ze dvou zadaných lgConfigK
hodnot.
Příklady
> SELECT hll_sketch_estimate(hll_union_agg(sketch, true))
FROM (SELECT hll_sketch_agg(col) as sketch
FROM VALUES (1) AS tab(col)
UNION ALL
SELECT hll_sketch_agg(col, 20) as sketch
FROM VALUES (1) AS tab(col));
1
> SELECT hll_sketch_estimate(hll_union_agg(sketch, false))
FROM (SELECT hll_sketch_agg(col) as sketch
FROM VALUES (1) AS tab(col)
UNION ALL
SELECT hll_sketch_agg(col, 20) as sketch
FROM VALUES (1) AS tab(col));
error