當Apache Spark將其結果上載到S3時,我發現一個主要的性能問題。按我的理解它去這些步驟......最後階段的Apache Spark向S3上傳性能問題
輸出寫入
_temp/
表HDFS和相同的移動到文件夾"_temporary"
具體S3
文件夾內。整個過程完成後--Apache spark完成
saveAsTextFile
階段,然後S3
中"_temporary"
文件夾中的文件被移動到主文件夾中。這實際上需要很長時間[每個文件大約1分鐘(平均大小:600 MB BZ2)]。該部分未登錄日誌stderr
。
我使用Apache Spark 1.0.1
與Hadoop 2.2
在AWS EMR。
有沒有人遇到過這個問題?
更新1
我怎樣才能提高做這個舉動進程的線程數?
任何建議高度讚賞...
感謝
你能否詳細說明你的答案?它不工作的形式...使用「Text.class」拋出錯誤... – user3279189 2014-09-29 09:57:13
您可以使用函數作爲saveAsHadoopFile [F <:org.apache.hadoop.mapred.OutputFormat [_,_]](路徑:字符串, keyClass:Class [_],valueClass:Class [_],outputFormatClass:Class [F],codec:Class [_ <:org.apache.hadoop.io.compress.CompressionCodec]):單位 將RDD輸出到任何Hadoop支持的文件系統,使用提供的編解碼器進行壓縮。把課程放在你的鑰匙和價值上 – 2014-09-29 11:06:22