Funzione hll_union_agg
Si applica a: Databricks SQL Databricks Runtime 13.3 LTS e versioni successive
Questa funzione utilizza l'algoritmo HyperLogLog per combinare un gruppo di schizzi in un unico.
Le query possono usare i buffer risultanti per calcolare conteggi univoci approssimativi con la funzione hll_sketch_estimate .
L'implementazione usa la libreria Apache Datasketches. Per altre informazioni, vedere HLL .
Sintassi
hll_union_agg ( expr [, allowDifferentLgConfigK ] )
Questa funzione può anche essere richiamata come funzione window usando la OVER
clausola .
Argomenti
expr
BINARY
: espressione che contiene uno schizzo generato da hll_sketch_agg.allowDifferentLgConfigK
: espressione costante facoltativaBOOLEAN
che controlla se consentire l'unione di schizzi con valori lgConfigK diversi. Il valore predefinito è false.
Valori restituiti
Buffer BINARY
contenente lo schizzo HyperLogLog calcolato in seguito alla combinazione delle espressioni di input dello stesso gruppo.
Quando il allowDifferentLgConfigK
parametro è true, lo schizzo del risultato usa il più piccolo dei due valori specificati lgConfigK
.
Esempi
> 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