spark知识点
几个概念File,Block,Split,Task,Partition,RDD以及节点数、Executor数、core数目的关系。
获取partitionId:TaskContext.getPartitionId()
累加器:Accumulator
对于只在actions执行更新操作的累加器,Spark会保证任务对累加器的更新操作只会应用一次,例如,重启任务不会更新累加器的值。在transformations中用户应该意识到,如果任务或作业阶段重新执行,每个任务的更新操作会应用多次(可以在count之前调用numberRDD的cache方法(或persist),这样在count后数据集就会被缓存下来,reduce操作就会读取缓存的数据集,而无需从头开始计算,例如:numberRDD.cache().count())
广播变量:Broadcast
transformation算子:map、mapPartitions
action算子:foreach、foreachPartition
https://www.zhihu.com/question/33270495/answer/82661639
https://zhuanlan.zhihu.com/p/94346878