hll_union_agg
集計関数: 以前に作成された Datasketches HllSketch インスタンスを Datasketches Union インスタンスを介してマージすることによって生成された、Datasketches HllSketch の更新可能なバイナリ表現を返します。スケッチに異なる lgConfigK 値があり、allowDifferentLgConfigK が設定されていないか false に設定されている場合は例外をスローします。
構文
Python
from pyspark.sql import functions as sf
sf.hll_union_agg(col, allowDifferentLgConfigK=None)
パラメーター
パラメーター | Type | 説明 |
|---|---|---|
|
| マージする HLL スケッチを含む列。 |
|
| 異なる lgConfigK 値を持つスケッチをマージできるようにします (デフォルトは false)。 |
戻り値
pyspark.sql.Column: マージされた HllSketch のバイナリ表現。
例
例1 : デフォルト設定でHLLスケッチをマージする
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|
+-------------------------------------------------+
例2 : 明示的なallowDifferentLgConfigKを使用してHLLスケッチをマージする
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|
+-------------------------------------------------+