9

ここで、spark を使用したデータ前処理のミニ チュートリアルに出くわしました: http://ampcamp.berkeley.edu/big-data-mini-course/featurization.html

ただし、これはテキストファイルの解析についてのみ説明しています。spark システムから xml ファイルを解析する方法はありますか?

4

4 に答える 4

5

誰かが apache-spark の xml データソースを作成したようです。

https://github.com/databricks/spark-xml

これは、タグを指定して型を推測することにより、XML ファイルの読み取りをサポートします。

import org.apache.spark.sql.SQLContext

val sqlContext = new SQLContext(sc)
val df = sqlContext.read
    .format("com.databricks.spark.xml")
    .option("rowTag", "book")
    .load("books.xml")

spark-shell以下のように使用することもできます。

$ bin/spark-shell --packages com.databricks:spark-xml_2.11:0.3.0
于 2015-11-06T09:38:11.773 に答える
3

私はそれを自分で使用したことはありませんが、方法は Hadoop の場合と同じです。たとえば、 StreamXmlRecordReaderを使用して xml を処理できます。レコード リーダーが必要な理由は、処理される各要素のレコード境界を制御したいからです。それ以外の場合は、LineRecordReader を使用するため、デフォルトで使用される行が処理されます。Hadoop の recordReader の概念に慣れておくと役立ちます。

そしてもちろん、 InputFormatClass を渡すオプションを指定して SparkContext の hadoopRDD または hadoopFile メソッドを使用する必要があります。Java が優先言語である場合、同様の代替手段が存在します。

于 2014-01-23T06:04:48.690 に答える
0

このリンクを見てください。

Databrics は、spark を介して xml データを処理するための spark-xml ライブラリを提供します。

ありがとう。

于 2016-11-17T11:14:48.593 に答える