2017-06-21 4 views
2

リモートサーバー上でApache Zeppelinのインスタンスが実行されていますが、Spalaインタプリタを介して通信するためにScalaを使用しています。リモートサーバー上で実行されているApache ZeppelinからHDFSにファイルを転送する

そのサーバーのディレクトリに保存されているcsvファイルを、リモートサーバー上にあるHDFS(Hadoop)に転送したいとします。

私はサーバ上の設定ファイルにアクセスできません。何もインストールできません。私はZeppelin内でのみコマンドを作成できます。

私は標準

sc.textFile("file:///test.csv") 

ステートメントを使用しようとしましたが、それは次のようなエラーが返されます。私はスパークができないので、私はこのエラーを取得する理由があると言われている

org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 19.0 failed 4 times, most recent failure: Lost task 0.3 in stage 19.0 (TID 64, 10.244.79.7): java.io.FileNotFoundException: File file:/test.csv does not exist

を私のZeppelinファイルシステムを見てください。私はそのようなものを有効にする方法はわかりません。

アドバイスは役に立ちます。

+0

私はそれがhdfsになければ、クラスタのすべてのノードにある必要があると思います。 (hadoop fs -putまたは同様のコマンド)。 – tbone

答えて

1

あなたは試すことができます:DNSは、名前のあなたのHadoopクラスタのノードとPORTのアドレスである

sc.textFile("hdfs://DNS:PORT/test.csv") 

は、デフォルト値はHadoopのディストリビューションに依存HDFSがリスンするポートです。共通値は8020です。 Hadoopのバージョンによっては、core-site.xmlのパラメータfs.default.nameまたはfs.defaultFSで確認できます。あなたはツェッペリンがアクセスできないようツェッペリンフォルダ(ツェッペリンのインストールフォルダ)にそのファイルを入れてくださいツェッペリンでローカルファイルを読み込むしようとしている場合

sc.textFile("hdfs://address:8020/test.csv") 
1

例要求は次のように見ることができますzeppelinフォルダの外側にあるファイル。

関連する問題