2017-07-19 25 views
0

Spark Streamingアプリケーションを実行していて、RDDの形式ではないHDFSにいくつかの結果をダンプしたいのですが、それらは単純な文字列です。ですから、どのようにしてこのデータをHDFSにダンプすることができますか?これらのデータをファイルに追加する方法があれば、非常に役に立ちます。SparkストリーミングスクリプトからHDFSに書き込む方法

答えて

1

あなたは常に文字列の配列からRDDを作成することができます:あなたはsaveAsTextFiles()メソッドを使用することができますファイルに出力を書き込むために val newRDD = sc.parallelize(/* here your list or array */)

foreachRDD + saveAsParquet(path, overwrite = true) - これを使用して、各rddを1つのファイルに書き込むことができます。

+0

RDDに変換せずに行う方法があるかどうかを知りたかったのですが、上記のsaveAsParquetメソッドを使用して同じファイルに追加して上書きすることはできません。 – JSR29

+0

ストリームは一連のRDDとして表現されます。したがって、rddを使用する必要があります。 データを追加するには、val data = sc.textFile( "/ path/to/my/file") データに新しい値を追加して新しいファイルとして保存するよりも –

関連する問題