我是spark / scala的新手,需要将文件从hdfs加载到spark。我在hdfs(/newhdfs/abc.txt
)中有一个文件,我可以使用hdfs dfs -cat /newhdfs/abc.txt
我按以下顺序将文件加载到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``
这是致命错误吗?我需要做些什么才能解决这个问题?
(使用Spark-2.0.0和Hadoop 2.7.0)
答案 0 :(得分:3)
不是错误,它只是说出了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元素的计数。