一个 Spark 程序对同一个经过复杂过滤的 RDD 先 count() 再 saveAsTextFile(),发现过滤逻辑被执行了两次。正确的处理是?

大数据基础

  1. A.把 count() 这一行删掉,因为 Spark 本身就不允许对同一个 RDD 先后执行多次 action
  2. B.把两个 action 写在同一行代码里
  3. C.对该 RDD 调用 cache()/persist() 再执行两个 action,首次结果缓存复用
  4. D.增大 executor 内存即可自动避免重复计算