schema_of_xml(xml)
Описание
Функция schema_of_xml()
возвращает схему XML-строки в формате DDL. Это полезно для определения структуры XML-данных перед их парсингом.
Параметры
xml
: str - XML-строка, для которой нужно определить схему
Возвращаемое значение
Column - строка с определением схемы в формате DDL
Пример использования
from pyspark.sql import SparkSession
from pyspark.sql.functions import schema_of_xml, lit
# Создаем SparkSession
spark = SparkSession.builder.appName("schema_of_xml_example").getOrCreate()
# XML-строка для анализа
xml_str = """
<person>
<name>John Doe</name>
<age>30</age>
<address>
<street>123 Main St</street>
<city>New York</city>
</address>
</person>
"""
# Получаем схему XML
schema = spark.sql(f"SELECT schema_of_xml('{xml_str}')").collect()[0][0]
print(f"Схема XML: {schema}")
# Результат:
# Схема XML: STRUCT<person: STRUCT<name: STRING, age: INT, address: STRUCT<street: STRING, city: STRING>>>
Примечания
- Автоматически определяет типы данных на основе содержимого XML
- Поддерживает вложенные структуры
- Полезно для:
- Анализа структуры XML-данных
- Создания схемы для парсинга XML
- Валидации XML-структуры
- Связанные функции:
from_xml()
- парсит XML-строку в структуру данныхto_xml()
- преобразует структуру данных в XMLschema_of_json()
- возвращает схему JSON-строки