scala - Spark中使用键值对RDD构建kdtree
问题描述
我正在尝试从名为“RDDofPoints”的一对RDD中的点构建kd树,类型为RDD [BoundingBox [Double],(Double,Double)]。所有的点都分配给一个特定的边界框,我的目标是为每个边界框构建一个 kd-tree。
我正在尝试为此目的使用 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函数,那会是哪一个?
谢谢你。
解决方案
推荐阅读
- elasticsearch - elasticsearch edge n-gram tokenizer:在标记中包含符号
- javascript - 如何在默认电子邮件客户端中打开发件箱/已发送电子邮件,从按钮单击的 Javascript?
- azure - 闪亮的微软认证
- mysql - 将 csv 导入 mysql 无法正常工作
- php - 如何使用 PHP/regexp 从 html 页面中提取链接图像
- python - 为像 [[ ]] 这样的一维数组指定括号是否会改变结构?
- azure-devops - 在 Azure Devops 发布作业中动态更新审批者列表
- vert.x - 在 vertx 的异步代码中访问请求上下文而不将其传递给每个函数
- javascript - Javascript:在父类的构造函数中访问子类的元数据
- delphi - 如何使 IDE 的断点与特定的 DCU 文件夹一起工作?