1
假设我有一个RDD为Array [Double],带有n列。我想在最后一列应用过滤器(例如,值>某个常量)。在矢量/阵列的RDD上应用滤镜[Double]
- 这是在Scala/Apache Spark中的语法是什么?
- 如果我有一个向量的RDD,可以这样做吗?
- 如果我可以选择其中一个(即Array [Double]的RDD和Vectors的RDD),我应该选择哪一个以便更高效/更快地编写代码?
假设我有一个RDD为Array [Double],带有n列。我想在最后一列应用过滤器(例如,值>某个常量)。在矢量/阵列的RDD上应用滤镜[Double]
类似的东西
val rdd: RDD[Array[Double]] = ...
val filtered: RDD[Array[Double]] = rdd.filter(arr => arr.last() > some_value)
我不认为它真正的问题是什么,选择Array或Vector。 Spark的总体开销远远高于阵列vs矢量的性能/内存收益