scala Spark无法使用spark-xml提取rootTag元素

mbzjlibv  于 2023-03-18  发布在  Scala
关注(0)|答案(1)|浏览(93)

我想使用Spark(spark-xml版本0.13.0 scala 2.11)从xml文件中提取rootTag元素,但是无法实现。例如,xml如下所示:

<?xml version="1.0"?>
<catalog>
   <dt_creation>13-03-2023</dt_creation> 
   <book id="bk101">
      <author>Gambardella, Matthew</author>
      <title>XML Developer's Guide</title>
      <price>44.95</price>
      <publish_date>2000-10-01</publish_date>
      <description>
         Oracle Streams Advanced Queuing XMLType support.
      </description></book><book id="bk102">
      <price>5.95</price>
   </book>
 </catalog>

我想使用spark代码从rootTag中dt_creation字段,如下所示:

val df = sparkSession.read
            .format("xml")
            .option("rootTag", "catalog")
            .option("rowTag", "book")
            .load(above-xml-file)

df.select("dt_creation").collect()

它会导致
邮件地址:“org.apache.spark.sql.无法解析给定输入列的“dt_creation”:[描述、价格、流派、发布日期、标题、ID、作者];; '项目[' dt_创建]
如何真正地提取存在于rowTag之外的rootTag元素?

相关问题