2016-09-30 25 views
2

我是spark/scala的新手,需要從hdfs加載一個文件進行spark。我在HDFS文件(/newhdfs/abc.txt),我可以用hdfs dfs -cat /newhdfs/abc.txt將hdfs文件加載到spark上下文中

我做下面以將文件加載到火花背景

spark-shell #It entered into scala console window 

scala> import org.apache.spark._; //Line 1 
scala> val conf=new SparkConf().setMaster("local[*]"); 
scala> val sc = new SparkContext(conf); 
scala> val input=sc.textFile("hdfs:///newhdfs/abc.txt"); //Line 4 

看到我的文件內容有一次,我打4號線進入,我正在收到消息。

input: org.apache.spark.rdd.RDD[String] = hdfs:///newhdfs/abc.txt MapPartitionsRDD[19] at textFile at <console>:27`` 

這是致命錯誤嗎?我需要做些什麼來解決這個問題?

(使用火花2.0.0和Hadoop 2.7.0)

+1

@gsamaras,注意。謝謝 :-) – Spike

回答

4

這是不是錯誤,它只是說你的RDD文件的名稱。

Basic docs,有這樣的例子:

scala> val textFile = sc.textFile("README.md") 
textFile: org.apache.spark.rdd.RDD[String] = README.md MapPartitionsRDD[1] at textFile at <console>:25 

這表明了同樣的行爲。


你怎麼會想到沒有行動觸發實際工作中發生的發生了錯誤?

如果您想檢查一切正常,請對您的input RDD進行一次計數,這是一個操作,將觸發文件的實際讀取,然後觸發RDD元素的計數。