0
Apache Spark中是否有任何方式將java RDD文本保存爲XML文件?將javaRDD保存爲XML文件
我目前所做的是使用saveAsTextFile方法將RDD另存爲純文本文件,然後將其轉換爲XML。 我有興趣找到一種方法來直接從RDD創建XML文件。
任何提示,想法或指導將不勝感激。
Apache Spark中是否有任何方式將java RDD文本保存爲XML文件?將javaRDD保存爲XML文件
我目前所做的是使用saveAsTextFile方法將RDD另存爲純文本文件,然後將其轉換爲XML。 我有興趣找到一種方法來直接從RDD創建XML文件。
任何提示,想法或指導將不勝感激。
您可以參考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的幫助。我按照你的解決方案實現了我的代碼,但是我在** save **步驟中遇到了以下錯誤。我們可以通過下面的例子來說明如何使用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;' 任何想法? –
什麼是您使用的火花版本? – FaigB
我使用Spark 2.2.0和spark-xml_2-10版本0.4.1作爲依賴 –