from_xml(col, schema)
Описание
Функция from_xml() парсит XML-строку в структуру данных согласно указанной схеме. Это позволяет работать с XML-данными в Spark SQL.
Параметры
col: Column - столбец, содержащий XML-строкуschema: str - схема XML в формате DDL
Возвращаемое значение
Column - структура данных, соответствующая схеме
Пример использования
from pyspark.sql import SparkSession
from pyspark.sql.functions import from_xml
# Создаем SparkSession
spark = SparkSession.builder.appName("from_xml_example").getOrCreate()
# Определяем схему XML
schema = """
  STRUCT<
    person: STRUCT<
      name: STRING,
      age: INT,
      address: STRUCT<
        street: STRING,
        city: STRING
      >
    >
  >
"""
# Создаем DataFrame с XML-данными
data = [("""
  <person>
    <name>John Doe</name>
    <age>30</age>
    <address>
      <street>123 Main St</street>
      <city>New York</city>
    </address>
  </person>
""",)]
df = spark.createDataFrame(data, ["xml_data"])
# Парсим XML
result = df.select(from_xml("xml_data", schema).alias("parsed_data"))
result.show(truncate=False)
# Результат:
# +--------------------------------------------------+
# |parsed_data                                       |
# +--------------------------------------------------+
# |{{John Doe, 30, {123 Main St, New York}}}        |
# +--------------------------------------------------+
 Примечания
- Схема должна соответствовать структуре XML
 - Поддерживает вложенные структуры
 - Полезно для:
 - Обработки XML-данных
 - Преобразования XML в структурированный формат
 - Интеграции с XML-источниками
 - Связанные функции:
 to_xml()- преобразует структуру данных в XMLschema_of_xml()- возвращает схему XML-строкиxpath()- извлекает значения из XML по XPath