如何读取 XML 文件 Azure Databricks Spark

How can I read a XML file Azure Databricks Spark

我在 MSDN 论坛上寻找一些信息,但找不到一个好的论坛/在 spark 网站上阅读时,我得到提示,在这里我会有更好的机会。 所以最重要的是,我想读取一个 Blob 存储,其中有 XML 文件的连续提要,所有小文件,最后我们将这些文件存储在 Azure DW 中。 使用 Azure Databricks 我可以使用 Spark 和 python,但我找不到 'read' xml 类型的方法。一些示例脚本使用了一个库 xml.etree.ElementTree 但我无法导入它.. 因此,感谢任何帮助我找到一个好的方向的帮助。

一种方法是使用数据块 spark-xml 库:

  1. 将 spark-xml 库导入您的工作区 https://docs.databricks.com/user-guide/libraries.html#create-a-library(在maven/spark包部分搜索spark-xml并导入)
  2. 将库附加到您的集群 https://docs.databricks.com/user-guide/libraries.html#attach-a-library-to-a-cluster
  3. 在笔记本中使用以下代码读取 xml 文件,其中 "note" 是我的 xml 文件的根目录。

xmldata = spark.read.format('xml').option("rootTag","note").load('dbfs:/mnt/mydatafolder/xmls/note.xml')

示例:

我发现这个真的很有帮助。 https://github.com/raveendratal/PysparkTelugu/blob/master/Read_Write_XML_File.ipynb

他也有一个 YouTube 来演示这些步骤。

总而言之,2 种方法:

  1. 在 'library' 选项卡的数据块集群中安装。
  2. 通过在笔记本本身中启动 spark-shell 来安装它。