Pular para o conteúdo principal

hell_union_agg

Função agregada: retorna a representação binária atualizável do Datasketches HllSketch, gerada pela fusão de instâncias Datasketches HllSketch criadas anteriormente por meio de uma instância Datasketches Union. Lança uma exceção se os esboços tiverem valores lgConfigK diferentes e allowDifferentLgConfigK não estiver definido ou estiver definido como falso.

Sintaxe

Python
from pyspark.sql import functions as sf

sf.hll_union_agg(col, allowDifferentLgConfigK=None)

Parâmetros

Parâmetro

Tipo

Descrição

col

pyspark.sql.Column ou str

A coluna contendo esboços HLL para merge.

allowDifferentLgConfigK

pyspark.sql.Column ou booleano, opcional

Permitir que esboços com valores de lgConfigK diferentes sejam mesclados (padrão: falso).

Devoluções

pyspark.sql.ColumnRepresentação binária da mesclagem HllSketch.

Exemplos

Exemplo 1 : mesclar esboços HLL com configurações default

Python
from pyspark.sql import functions as sf
df1 = spark.createDataFrame([1,2,2,3], "INT")
df1 = df1.agg(sf.hll_sketch_agg("value").alias("sketch"))
df2 = spark.createDataFrame([4,5,5,6], "INT")
df2 = df2.agg(sf.hll_sketch_agg("value").alias("sketch"))
df3 = df1.union(df2)
df3.agg(sf.hll_sketch_estimate(sf.hll_union_agg("sketch"))).show()
Output
+-------------------------------------------------+
|hll_sketch_estimate(hll_union_agg(sketch, false))|
+-------------------------------------------------+
| 6|
+-------------------------------------------------+

Exemplo 2 : mesclar esboços HLL com allowDifferentLgConfigK explícito

Python
from pyspark.sql import functions as sf
df1 = spark.createDataFrame([1,2,2,3], "INT")
df1 = df1.agg(sf.hll_sketch_agg("value").alias("sketch"))
df2 = spark.createDataFrame([4,5,5,6], "INT")
df2 = df2.agg(sf.hll_sketch_agg("value").alias("sketch"))
df3 = df1.union(df2)
df3.agg(sf.hll_sketch_estimate(sf.hll_union_agg("sketch", False))).show()
Output
+-------------------------------------------------+
|hll_sketch_estimate(hll_union_agg(sketch, false))|
+-------------------------------------------------+
| 6|
+-------------------------------------------------+