将javaRDD另存为XML文件
在ApacheSpark中有没有办法将文本的JavaRDD保存为XML文件 我目前所做的是使用savastextfile方法将RDD保存为纯文本文件,然后将其转换为XML。 我感兴趣的是找到一种从RDD直接创建XML文件的方法将javaRDD另存为XML文件,java,xml,apache-spark,text-files,Java,Xml,Apache Spark,Text Files,在ApacheSpark中有没有办法将文本的JavaRDD保存为XML文件 我目前所做的是使用savastextfile方法将RDD保存为纯文本文件,然后将其转换为XML。 我感兴趣的是找到一种从RDD直接创建XML文件的方法 任何提示、想法或指南都将不胜感激。您可以参考databricks xml库,从xml读写数据。从数据推断架构: import org.apache.spark.sql.SQLContext SQLContext sqlContext = new SQLContext(s
任何提示、想法或指南都将不胜感激。您可以参考databricks xml库,从xml读写数据。从数据推断架构:
import org.apache.spark.sql.SQLContext
SQLContext sqlContext = new SQLContext(sc);
DataFrame df = sqlContext.read()
.format("com.databricks.spark.xml")
.option("rowTag", "book")
.load("books.xml");
df.select("author", "_id").write()
.format("com.databricks.spark.xml")
.option("rootTag", "books")
.option("rowTag", "book")
.save("newbooks.xml");
谢谢@FaigB的帮助。我按照您的解决方案实现了代码,但在保存步骤中出现以下错误
java.lang.AbstractMethodError:com.databricks.spark.xml.DefaultSource.createRelation(Lorg/apache/spark/sql/SQLContext;Lorg/apache/spark/sql/SaveMode;Lscala/collection/immutable/Map;Lorg/apache/spark/sql/Dataset;)Lorg/apache/spark/sql/sources/BaseRelation代码>有什么想法吗?您使用的spark版本是什么?我使用spark 2.2.0和spark-xml_2-10版本0.4.1作为依赖项