Spark中的共享变量---广播变量和累加器

一.广播变量和累加器的作用
累加器(集群规模之间的大变量):做Spark的全局统计使用
广播变量(集群规模间的大常量):在每一台机器上缓存一个只读的变量,而不是每个任务一份拷贝。利用更有效率的广播算法分配广播变量可以减小通信成本。

二.广播变量和累加器使用注意事项
广播变量
1.在Driver端定义
2.在Executor端只能读取不能修改
3.广播变量的值只能在Driver端修改
累加器
1.累加器只能在Driver端定义
2.累加器的值在Executor端不能读取,但是在Executor端可以操作累加器
3.累加器的值只能在Driver端读取

如何将RDD中广播变量传播出去?
需要对RDD调用collect算子 每一个task的计算结果会拉回到Driver端

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容