1.transformation & action
transformation :是得到一个新的RDD,方式很多,比如从数据源生成一个新的RDD或者从RDD生成一个新的RDD
action : 是得到一个值,或者一个结果(直接将RDDcache到内存中)
所有的transformation都是采用的懒策略,就是如果只是将transformation提交是不会执行计算的,计算只有在action被提交的时候才被触发。
2.countByKey()与reduceByKey()
(1)countByKey()属于action,而reduceByKey()属于transformation
(2)countByKey()得到的类型为map(是在driver端的最终结果),而reduceByKey()得到的类型是RDD
(3)data.countByKey()相当于data.reduceByKey(_+_).collectAsMap()