Skip to content

xxhash64(*cols)

Описание

Функция xxhash64() вычисляет 64-битный хеш xxHash для одного или нескольких столбцов.

Параметры

  • *cols: Column - один или несколько столбцов для хеширования

Возвращаемое значение

Long - 64-битный хеш xxHash

Пример использования

from pyspark.sql.functions import xxhash64
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("xxhash64_example").getOrCreate()

# Создаем DataFrame с данными
data = [("Hello", 1), ("World", 2), ("Spark", 3)]
df = spark.createDataFrame(data, ["text", "number"])

# Вычисляем xxHash64 для одного столбца
result1 = df.select(
    "text",
    xxhash64("text").alias("text_hash")
).show()

# Вычисляем xxHash64 для нескольких столбцов
result2 = df.select(
    "text",
    "number",
    xxhash64("text", "number").alias("combined_hash")
).show()

# Результат:
# +-----+-------------------+
# |text |text_hash          |
# +-----+-------------------+
# |Hello|-375576436552957538|
# |World|-375576436552957538|
# |Spark|-375576436552957538|
# +-----+-------------------+

# +-----+------+-------------------+
# |text |number|combined_hash      |
# +-----+------+-------------------+
# |Hello|     1|-375576436552957538|
# |World|     2|-375576436552957538|
# |Spark|     3|-375576436552957538|
# +-----+------+-------------------+

Примечания

  • NULL значения возвращают NULL
  • xxHash64 - это быстрый алгоритм хеширования
  • Для других алгоритмов хеширования используйте:
  • sha() для SHA-1
  • sha2() для SHA-2
  • md5() для MD5
  • crc32() для CRC32
  • hash() для общего хеширования