base64(col)
Описание
Функция base64()
вычисляет BASE64 кодирование бинарного столбца и возвращает его как строковый столбец. BASE64 - это метод кодирования двоичных данных в ASCII строку.
Параметры
col
: binary или Column - имя столбца или объект Column, содержащий бинарные данные
Возвращаемое значение
String - строка в формате BASE64
Пример использования
from pyspark.sql.functions import base64, unbase64
# Создаем DataFrame с бинарными данными
df = spark.createDataFrame([
(bytearray(b"Hello"),),
(bytearray(b"World"),)
], ["binary_data"])
# Кодируем в BASE64
df.select(
base64("binary_data").alias("base64_encoded")
).show(truncate=False)
# Результат:
# +----------------+
# |base64_encoded |
# +----------------+
# |SGVsbG8= | # BASE64 для "Hello"
# |V29ybGQ= | # BASE64 для "World"
# +----------------+
# Декодирование обратно в бинарные данные
df.select(
unbase64(base64("binary_data")).alias("decoded")
).show(truncate=False)
Примечания
- Функция работает только с бинарными данными
- Для декодирования BASE64 обратно в бинарные данные используйте функцию
unbase64()
- BASE64 кодирование увеличивает размер данных примерно на 33%
- Используется для безопасной передачи бинарных данных через текстовые протоколы