2017-09-01 28 views
0

Apache SparkにJava RDDのテキストをXMLファイルとして保存する方法はありますか?javaRDDをXMLファイルとして保存

私は現在、saveAsTextFileメソッドを使用してRDDをプレーンテキストファイルとして保存し、XMLに変換しています。 RDDから直接XMLファイルを作成する方法を見つけることに興味があります。

どのようなヒント、アイデア、ガイドがあれば幸いです。

答えて

1

databricks xml libraryを参照して、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"); 
+0

ありがとうございます@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; ' ご存じですか? –

+0

使用しているスパークのバージョンは? – FaigB

+0

私はspark 2.2.0とspark-xml_2-10 version 0.4.1を依存関係として使用しています –

関連する問題