2017-08-10 66 views
0

我需要一些建議,以解決以下問題:SparkJob生成遠程服務器上的文件

我有一個帶Cassandra的Spark羣集。 我需要寫一個Spark工作(使用Scala)從Cassandra中提取一些信息。我需要生成一個結果文件並將其放在另一個服務器上(沒有Spark的地方)。

我的問題是:什麼是最好的解決方案? 1.在spark服務器上生成文件,然後執行scp將其複製到目標服務器上? 2.是否有另一種方法可以在我的目標服務器上正確生成文件?

謝謝。

回答

1

更好的方法是計算結果並將它們存儲在HDFS(帶spark的服務器)的某個目錄中,然後nfs將此目錄掛載到目標服務器中的某個路徑(服務器沒有火花)。

讓我知道這是否有幫助。乾杯。

+0

我忘了提及:我需要將文件複製到2個遠程服務器(我有一些其他分佈的東西)。是否有可能nfs掛載到2個遠程服務器的HDFS? –

+0

不錯,你的想法,但我想從你的想法開始,也許我會用一個rsync來代替。我認爲這會對我所需要的更好 –

+0

rsync旨在通過網絡發送1000個小文件。 NFS不是。 NFS旨在充當一個本地文件系統,該系統必須與大多數操作的遠程主機進行通信。使用rsync你基本上是在目標服務器上創建所有這些文件的副本。我相信這是你不想這樣做的原因,爲什麼我沒有建議。 –