我们可以在Spark中对其他Action应用Action吗?

时间:2016-05-24 11:36:52

标签: apache-spark

我正在尝试运行一些基本的火花应用程序。

我们可以将动作应用于其他动作吗?

动作只能应用于Transformed RDD?

  val numbersRDD = sc.parallelize(Array(1,2,3,4,5));
  val topnumbersRDD = numbersRDD.take(2)

 scala> topnumbersRDD.count
 <console>:17: error: missing arguments for method count in    trait             TraversableOnce;
   follow this method with `_' if you want to treat it as a partially       applied function
          topnumbersRDD.count
                        ^

我想知道为什么我收到上述错误。

如果我想找到前两个数字的数量,我该怎么办...我需要输出为2。

1 个答案:

答案 0 :(得分:0)

可以在RDDDataFrame上应用操作,take方法返回一个数组,您可以使用数组的长度或大小来计算元素。

如果要选择具有条件的数据,可以使用filter并返回新的RDD