如何以 xml 格式保存 pyspark sql DataFrame

Posted

技术标签:

【中文标题】如何以 xml 格式保存 pyspark sql DataFrame【英文标题】:How to save a pyspark sql DataFrame in xml format 【发布时间】:2016-06-21 13:24:02 【问题描述】:

我以 parquet 格式存储了一个 pyspark sql 数据框。现在我也想将它保存为 xml 格式。我怎样才能做到这一点?直接将 pyspark sql 数据框保存在 xml 中或将镶木地板转换为 xml 的解决方案对我有用。提前致谢。

【问题讨论】:

【参考方案1】:

我还没有尝试过,但这个包可能会有所帮助。 Data Bricks Spark-XML

以下是 Python 的示例代码:

from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)

df = sqlContext.read.format('com.databricks.spark.xml').options(rowTag='book').load('books.xml')
df.select("author", "_id").write \
    .format('com.databricks.spark.xml') \
    .options(rowTag='book', rootTag='books') \
    .save('newbooks.xml')

【讨论】:

【参考方案2】:

您可以将每一行映射到带有 xml 分隔符的字符串,然后保存为文本文件

【讨论】:

我推荐一个内置库,例如来自 @jmm312 的 Data Bricks Spark-XML 示例

以上是关于如何以 xml 格式保存 pyspark sql DataFrame的主要内容,如果未能解决你的问题,请参考以下文章

我可以将 pyspark 数据框保存为哪些文件格式?

如何在pyspark sql中保存表?

pyspark.sql.utils.AnalysisException:参考“标题”不明确,可能是:标题,标题

通过 pyspark.sql.dataframe 将 XML 数据转换为 pandas 数据帧

xml 如何使用URI以json格式将多个图像保存到localdb

如何使用pyspark函数处理日期格式的T和Z