hll_sketch_agg(col[, lgConfigK])
Описание
Функция hll_sketch_agg() создает HyperLogLog (HLL) эскиз для приблизительного подсчета уникальных значений в столбце. Это агрегатная функция, которая должна использоваться с groupBy().
Параметры
col: Column - столбец для создания HLL эскизаlgConfigK: Integer (опционально) - параметр точности, по умолчанию 12
Возвращаемое значение
Binary - бинарное представление HLL эскиза
Пример использования
from pyspark.sql.functions import hll_sketch_agg
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("hll_sketch_agg_example").getOrCreate()
# Создаем DataFrame
data = [
    ("A", 1),
    ("A", 2),
    ("A", 2),
    ("B", 3),
    ("B", 4),
    ("B", 4),
    ("B", 5)
]
df = spark.createDataFrame(data, ["group", "value"])
# Создаем HLL эскиз
result = df.groupBy("group").agg(
    hll_sketch_agg("value").alias("hll_sketch"),
    hll_sketch_agg("value", 10).alias("hll_sketch_low_precision")
).show(truncate=False)
# Результат:
# +-----+--------------------+---------------------------+
# |group|hll_sketch          |hll_sketch_low_precision   |
# +-----+--------------------+---------------------------+
# |A    |[B@1234567890...]   |[B@0987654321...]         |
# |B    |[B@2345678901...]   |[B@9876543210...]         |
# +-----+--------------------+---------------------------+
 Примечания
- HLL эскиз - это вероятностная структура данных для приблизительного подсчета уникальных значений
 - Параметр lgConfigK влияет на точность и размер эскиза (больше = точнее, но больше памяти)
 - Для объединения HLL эскизов используйте 
hll_union_agg() - Для точного подсчета уникальных значений используйте 
countDistinct()