所以这就是我一直在尝试的,我是一个新手在这里与火花一起工作!
我正在尝试执行此代码
val ii=sc.parallelize(Seq(("e.txt"),("r.txt"))).foreach{i => sc.textFile(i)}
但我得到了“Nullpointer例外”
谢谢!
答案 0 :(得分:1)
您只需向sc.textFile
添加多个文件即可。您不应该在地图操作中使用sc
。 map
函数将分发给不同的执行程序,sc
存在于驱动程序中。因此它会抛出一个Nullpointer异常。
a.txt contents:
a.txt:line1
a.txt:line2
b.txt contents:
b.txt:line1
b.txt:line2
Spark允许您在同一操作中添加更多文件:
scala> sc.textFile("a.txt,b.txt").collect()
res1: Array[String] = Array(a.txt:line1, a.txt:line2, b.txt:line1, b.txt:line2)
希望这有助于Spark玩得开心!