2

S3 に保存したいデータが Spark にあります。推奨される保存方法は、saveAsTextFile成功した SparkContext のメソッドを使用することです。データは「パーツ」として保存されると思います。

私の問題は、S3 にアクセスして自分のデータを確認すると、データがフォルダー名_temporaryに保存され、サブフォルダーが0あり、各パーツまたはタスクが独自のフォルダーに保存されていることです。

例えば、

data.saveAsTextFile("s3:/kirk/data");

ファイルのいいね!

s3://kirk/data/_SUCCESS
s3://kirk/data/_temporary/0/_temporary_$folder$
s3://kirk/data/_temporary/0/task_201411291454_0001_m_00000_$folder$
s3://kirk/data/_temporary/0/task_201411291454_0001_m_00000/part-00000
s3://kirk/data/_temporary/0/task_201411291454_0001_m_00001_$folder$
s3://kirk/data/_temporary/0/task_201411291454_0001_m_00001/part-00001

等々。私は期待し、次のようなものを見ました

s3://kirk/data/_SUCCESS
s3://kirk/data/part-00000
s3://kirk/data/part-00001

これは構成設定ですか、それとも一時ファイルを解決するために保存を「コミット」する必要がありますか?

4

2 に答える 2

1

Spark ストリーミングで同じ問題が発生しました。これは、Sparkmaster がconf.setMaster("local")ではなく でセットアップされたため、ストリーム中に Spark を実行できないためです。conf.SetMaster("local[*]")[*]saveastextfile

于 2015-02-28T02:32:15.820 に答える
0

エクスポートする前に、coalesce() を使用して rdd を 1 パーティションに減らしてみてください。幸運を!

于 2015-08-10T20:46:32.877 に答える