我正在尝试使用RDD [BoundingBox [Double],(Double,Double)]类型的一对名为“ RDDofPoints”的RDD中的点构建kd树。所有的点都分配给特定的边界框,我的目标是为每个边界框构建一个kd树。
我正在为此目的使用reduceByKey。但是,在这种情况下,我会停留在如何调用buildtree函数上。
buildtree的函数声明为:
def buildtree(points: RDD[(Double, Double)], depth: Int = 0): Option[KdNodeforRDD]
而且,我试图将其称为:
val treefromPairRDD = RDDofPoints.reduceByKey((k,v) => buildtree(v))
这显然行不通。我对Scala和Spark还是陌生的,请提出在这种情况下可以采取的适当方法。我不确定使用reduceByKey,如果可以在此处应用其他对RDD函数,它将是哪一个?
谢谢。