spark广播变量

2024-1-24

广播变量特点

  • Broadcast Variable会将使用到的变量,只会为每个节点拷贝一份,不会为每个task进行拷贝,能够优化性能(在task数量比较大体现更明显),减少网络传输及内存消耗
  • 通过SparkContext的broadcast()方法,针对某个变量创建广播变量,可以通过广播变量的value()方法获取值
  • 广播变量是只读
Scala 复制代码
object BroadcastTest {

  def main(args: Array[String]): Unit = {
    val conf: SparkConf = new SparkConf().setAppName("Broadcast").setMaster("local")
    val sc = new SparkContext(conf)
    sc.setLogLevel("ERROR")
    val listRDD: RDD[Int] = sc.parallelize(List(1, 2, 3, 4))
    var num = 2
    val bc: Broadcast[Int] = sc.broadcast(num)
    listRDD.map(x=> x * bc.value).foreach(println)
  }
}
相关推荐
字节数据平台9 小时前
评测也很酷,Data Agent 自动化评测的三层框架与实战
大数据
Elastic 中国社区官方博客10 小时前
Elasticsearch:圣诞晚餐 BBQ - 图像识别
大数据·数据库·elasticsearch·搜索引擎·ai·全文检索
Macbethad10 小时前
数据挖掘实战项目:用户行为分析模型技术报告
大数据
LINGYI00010 小时前
品牌电商全域代运营公司——简述
大数据·全域电商
努力成为一个程序猿.10 小时前
1.ElasticSearch单节点部署
大数据·elasticsearch·搜索引擎
渲吧-云渲染12 小时前
概念解码:PDM、PLM与ERP——厘清边界,深化协作,驱动制造数字化升级
大数据·制造
2501_9411481514 小时前
从边缘节点到云端协同的分布式缓存一致性实现原理实践解析与多语言代码示例分享笔记集录稿
笔记·分布式·物联网·缓存
建群新人小猿15 小时前
陀螺匠企业助手-我的日程
android·大数据·运维·开发语言·容器
云和数据.ChenGuang15 小时前
git commit复合指令
大数据·git·elasticsearch
尋有緣15 小时前
力扣614-二级关注者
大数据·数据库·sql·oracle