Spark广播变量HttpBroadcast和TorrentBroadcast对比

HttpBroadcast会在driver端的BlockManager里面存储广播变量对象,并且将该广播变量序列化写入文件中去。所有获取广播数据请求都在driver端,所以存在单点故障和网络IO性能问题。

TorrentBroadcast会在driver端的BlockManager里面存储广播变量对象,并将广播对象分割成若干序列化block块(默认4M),存储于BlockManager。小的block存储位置信息,存储于Driver端的BlockManagerMaster。数据请求并非集中于driver端,避免了单点故障和driver端网络磁盘IO过高。

TorrentBroadcast在executor端存储一个对象的同时会将获取的block存储于BlockManager,并向driver端的BlockManager汇报block的存储信息。请求数据的时候会先获取block的所有存储位置信息,并且是随机的在所有存储了该executor的BlockManager去获取,避免了数据请求服务集中于一点。

总之,就是HttpBroadcast导致获取广播变量的请求集中于driver端,容易引起driver端单点故障,网络IO过高影响性能等问题,而TorrentBroadcast获取广播变量的请求服务即可以请求到driver端也可以在executor,避免了上述问题,当然这只是主要的优化点。

相关推荐
我要升天!1 小时前
Git的原理与使用 -- 基础操作
大数据·服务器·git·elasticsearch
阿里云大数据AI技术1 小时前
云栖实录 | 实时计算 Flink 全新升级 - 全栈流处理平台助力实时智能
大数据·人工智能
鲜枣课堂3 小时前
重新安全定义,IMS算网融合加速企业专网AI+场景落地
大数据·人工智能·安全
阿里云大数据AI技术3 小时前
云栖实录 | 驰骋在数据洪流上:Flink+Hologres驱动零跑科技实时计算的应用与实践
大数据·flink
北邮-吴怀玉3 小时前
1.2.1.3 大数据方法论与实践指南-一种跨团队业务结算方式探索
大数据
字节数据平台3 小时前
得物×火山引擎:Data Agent驱动财务管理智能升级
大数据
字节数据平台4 小时前
火山引擎推出Data Agent评测体系,并发布《2025数据智能体实践指南》
大数据
sniper_fandc4 小时前
Elasticsearch从入门到进阶——搜索引擎原理
大数据·elasticsearch·搜索引擎
云境天合知识分享4 小时前
防爆气象站:为化工园区筑牢安全屏障
大数据
优软轻创-拓客私域4 小时前
数字权益市场爆发:如何通过权益数卡选对优质货源
大数据·人工智能