Я пытаюсь построить kd-деревья из точек в паре RDD с именем "RDDofPoints" с типом RDD [BoundingBox [Double], (Double, Double)].Все точки назначены определенному ограничивающему прямоугольнику, и моя цель состоит в том, чтобы создать дерево kd для каждого из ограничивающих прямоугольников.
Я пытаюсь использовать ReduByKey для этой цели.Тем не менее, я застрял в том, как вызвать функцию buildtree в этом случае.
Объявление функции buildtree:
def buildtree(points: RDD[(Double, Double)], depth: Int = 0): Option[KdNodeforRDD]
И я пытаюсь вызвать его как:
val treefromPairRDD = RDDofPoints.reduceByKey((k,v) => buildtree(v))
Это не работает, очевидно.Я довольно новичок в Scala и Spark, пожалуйста, предложите, как можно поступить в этой ситуации.Я не уверен насчет использования reduByKey, если здесь можно применить какую-нибудь другую функцию RDD, какая из них будет?
Спасибо.