第42课:  Spark Broadcast内幕解密:Broadcast运行机制彻底解密、Broadcast源码解析、Broadcast最佳实践

Broadcast在机器学习、图计算、构建日常的各种算法中到处可见。 Broadcast就是将数据从一个节点发送到其它的节点上;例如Driver上有一张表,而Executor中的每个并行执行的Task(100万个Task)都要查询这张表,那我们通过Broadcast的方式就只需要往每个Executor把这张表发送一次就行了,Executor中的每个运行的Task查询这张唯一的表,而不是每次执行的时候都从Driver获得这张表!

JAVA中的Servlet里面有个ServletContext,是JSP或Java代码运行时的上下文,通过上下文可以获取各种资源。Broadcast类似于ServletContext中的资源、变量或数据,Broadcast广播出去是基于Executor的,里面的每个任务可以用上下文,Task的上下文就是Executor,可以抓取数据。这就好像ServletContext的具体作用,只是Broadcast是分布式的共享数据,默认情况下只要程序在运行Broadcast变量就会存在,因为Broadcast在底层是通过BlockManager管理的!但是你可以手动指定或者配置具体周期来销毁Broadcast变量!可以指定Broadcast的unpersist销毁Broadcast变量,因为Spark应用程序中可能运行很多job,可能一个job需要很多Broadcast变量,但下一个job不需要这些变量,但是应用程序还存在,因此需手工销毁Broadcast变量。

Broadcast一般用于处理共享配置文件、通用的Dataset、常用的数据结构等等;但是不适合存放太大的数据在B

第42课: Spark Broadcast内幕解密:Broadcast运行机制彻底解密、Broadcast源码解析、Broadcast最佳实践相关推荐

  1. 第36课:kaishi 彻底解密Spark 2.1.X中Sort Shuffle中Reducer端源码内幕

    第36课:kaishi 彻底解密Spark 2.1.X中Sort Shuffle中Reducer端源码内幕 本文根据家林大神系列课程编写 http://weibo.com/ilovepains 本课讲 ...

  2. 第43课: Spark 1.6 RPC内幕解密:运行机制、源码详解、Netty与Akka等

    第43课: Spark 1.6 RPC内幕解密:运行机制.源码详解.Netty与Akka等 Spark 1.6推出了以RpcEnv.RPCEndpoint.RPCEndpointRef为核心的新型架构 ...

  3. 第33课:彻底解密Spark 2.1.X中Shuffle 中Mapper端的源码实现

    第33课:彻底解密Spark 2.1.X中Shuffle 中Mapper端的源码实现 本文根据家林大神系列课程编写 http://weibo.com/ilovepains Spark是MapReduc ...

  4. 第3课:SparkStreaming 透彻理解三板斧之三:解密SparkStreaming运行机制和架构进阶之Job和容错...

    本期内容: 解密Spark Streaming Job架构和运行机制 解密Spark Streaming容错架构和运行机制 理解SparkStreaming的Job的整个架构和运行机制对于精通Spar ...

  5. 【Android】Android Broadcast源码解析

    Android Broadcast源码解析 一.静态广播的注册 静态广播是通过PackageManagerService在启动的时候扫描已安装的应用去注册的. 在PackageManagerServi ...

  6. Spark ALS recommendForAll源码解析实战之Spark1.x vs Spark2.x

    文章目录 Spark ALS recommendForAll源码解析实战 1. 软件版本: 2. 本文要解决的问题 3. 源码分析实战 3.1 Spark2.2.2 ALS recommendForA ...

  7. Spark一级资源调度Shedule机制及SpreadOut模式源码深入剖析

    本套系列博客从真实商业环境抽取案例进行总结和分享,并给出Spark源码解读及商业实战指导,请持续关注本套博客.版权声明:本套Spark源码解读及商业实战归作者(秦凯新)所有,禁止转载,欢迎学习. Sp ...

  8. Spark任务提交后是如何完成提交过程的?源码解析!

    Spark任务提交后是如何完成提交过程的?源码解析! 我们熟知的提交命令: spark­submit ­v ­­class xxx ­­master spark://xxx7077 .... 然后我们 ...

  9. [源码解析] 深度学习分布式训练框架 horovod (11) --- on spark --- GLOO 方案

    [源码解析] 深度学习分布式训练框架 horovod (11) - on spark - GLOO 方案 文章目录 [源码解析] 深度学习分布式训练框架 horovod (11) --- on spa ...

最新文章

  1. 题目 1083:【蓝桥杯】【入门题】Hello, world!
  2. SAP 对话屏幕长文本编辑框
  3. php计算时间差js,JavaScript如何计算时间差(引入外部字体文件)?
  4. pandas中to_csv()和read_csv()参数详解
  5. oracle连接本地数据库
  6. 1万字30张图说清TCP协议
  7. 阿里涉江:你真的会学习吗?从结构化思维说起
  8. pandas python2.3版本_python-像以前的版本一样,将pandas 0.13.0“ pri...
  9. 在HTML中使用JavaScript
  10. 我喜欢的歌-FOREVER
  11. mysql 表字段信息从一张表迁移到另一张表_Mysql之分库分表
  12. php位置,php – 如何有效地找到一个给定位置附近最近的位置
  13. 一元非线性方程求根的算法——二分法/牛顿迭代法
  14. nyoj112指数运算
  15. bzoj3384[Usaco2004 Nov]Apple Catching 接苹果*bzoj1750[Usaco2005 qua]Apple Catching*
  16. centos7 配置phpAdmin
  17. 跨站漏洞解析-小韩网站编程安全系列一
  18. oeasy教您玩转vim - 23 - 配置文件
  19. pythonidle如何调字体_python IDLE 背景以及字体的修改
  20. 或是独体字吗_独体字结构 独体结构的字有哪些字?

热门文章

  1. DGUS组态软件组中的图标变量显示如何使用
  2. 研究目标与研究内容的撰写
  3. Unity3D 罗技G29开发笔记
  4. Checkra1n越狱更新0.12.4版本,支持iOS14.7.1越狱
  5. 生成化学表达式下标、上标数字
  6. CSDN的markdown编辑器使用(含表格背景色、文本颜色字体字号、锚点跳转、表情符号等)
  7. 产品经理的竞品分析报告入门
  8. ubuntu12.04宽带链接 以及 宽带链接后 再上局域网时出现的问题
  9. U盘安装ubuntu(双系统共存)
  10. 计算机二级office公式汇总,计算机二级Office2010Eexcel公式汇总