Читать XML-файл в PySpark - PullRequest
       2

Читать XML-файл в PySpark

0 голосов
/ 05 декабря 2018

Я пытаюсь прочитать XML в фрейм данных в PySpark.Из документов Databricks я понял, как загрузить XML-файл, но возвращенный фрейм данных пуст.Пример того, как я читаю файл и файл, который я пытаюсь проанализировать, опубликован ниже.

from pyspark import SparkContext, SparkConf
from pyspark.sql import SQLContext
import os
os.environ['PYSPARK_SUBMIT_ARGS'] = '--packages com.databricks:spark-xml_2.10:0.4.1 pyspark-shell'
conf = SparkConf().setAppName('Stackoverflow')
sc = SparkContext(conf=conf)
sqlc = SQLContext(sc)

sqlc.read \
        .format('com.databricks.spark.xml') \
        .option('rootTag', 'tags') \
        .option('rowTag', 'row') \
        .load('example.xml')

example.xml:

<?xml version="1.0" encoding="utf-8"?>
<tags>
  <row Id="1" TagName="inclination" Count="18" ExcerptPostId="553" WikiPostId="552" />
  <row Id="3" TagName="exoplanet" Count="219" ExcerptPostId="11" WikiPostId="10" />
</tags>

1 Ответ

0 голосов
/ 05 декабря 2018

В теге строки books.xml from spark-xml содержатся дочерние теги, которые будут анализироваться как поля строк.В моих примерах нет дочерних тегов, только атрибуты.Это было основной причиной того, что не было выдано никакой ошибки, и результатом стал пустой фрейм данных.Я думаю, что это должно быть исправлено в следующих версиях spark-xml.

Я использовал spark-2.1.0 и spark-xml-0.4.0.

...