2016-12-16 5 views
1

マイコンピュータはWindowsマシンです。 Eclipse IDEでsparkコードをテストしています。SparkでWindowsネットワークファイルを読み取る

ネットワークフォルダにファイルsample.txtが保存されています。

ファイルの場所のプロパティは\\\aloha\logfolderです。

私はsparkcontextでこれを読もうとしています。以下は私のコードスニペットです。私もオプションの下に試してみました

Exception in thread "main" org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file://aloha/logfolder/sample.txt 

val conf = new SparkConf().setAppName("WordCount").setMaster("local") 
val sc = new SparkContext(conf) 
val inp = sc.textFile("\\\\aloha\\logfolder\\sample.txt") 

しかし

は、私は次のエラーを得ました。

val inp = sc.textFile("file:\\\\aloha\\logfolder\\sample.txt") 
val inp = sc.textFile('file:\\\\aloha\\logfolder\\sample.txt') 

しかし、いずれも機能していないようです。

同じファイルを私のCドライブにコピーすると、そのドライブが動作します。

val inp = sc.textFile("C:\\Desktop\\logfolder\\sample.txt') 

私には何が欠けているのですか?

答えて

2

私が知る限り、SparkContext.textfile()は、WindowsのUNCパスを使用してファイルを読み込むことができません。 see similar issue

/** 
    * Read a text file from HDFS, a local file system (available on all nodes), or any 
    * Hadoop-supported file system URI, and return it as an RDD of Strings. 
    */ 
    def textFile(
     path: String, 
     minPartitions: Int = defaultMinPartitions): RDD[String] = withScope { 
    assertNotStopped() 
    hadoopFile(path, classOf[TextInputFormat], classOf[LongWritable], classOf[Text], 
     minPartitions).map(pair => pair._2.toString).setName(path) 
    } 
+0

おかげでRam。あなたはsparkでこれらのファイルを読むための他の回避策を知っていますか? – user7264473

+0

それらをhdfsに手動またはローカルで 'robocopy'を使ってコピーしてください。これは私が知っている唯一のものです。 –

関連する問題