我从 中读取文件HDFS
,其中包含在JTSx1,x2,y1,y2
中表示 a 。envelope
我想用这些数据在foreach
.
val inputData = sc.textFile(inputDataPath).cache()
val strtree = new STRtree
inputData.foreach(line => {val array = line.split(",").map(_.toDouble);val e = new Envelope(array(0),array(1),array(2),array(3)) ;
println("envelope is " + e);
strtree.insert(e,
new Rectangle(array(0),array(1),array(2),array(3)))})
如您所见,我还打印了该e
对象。
令我惊讶的是,当我记录 的大小时strtree
,它为零!似乎这种insert
方法在这里毫无意义。
顺便说一句,如果我逐行编写一些测试数据的硬代码,strtree
就可以很好地构建。
还有一件事,这些项目被打包到 jar 中并以spark-shell
.
那么,为什么该方法foreach
不起作用?