当前位置: 首页 > news >正文

网站欢迎页面 特效微信朋友圈广告如何投放

网站欢迎页面 特效,微信朋友圈广告如何投放,苏州保洁公司电话号码,网络架构分层包括哪些在前一篇Spark SQL 执行计划解析源码分析中,笔者分析了Spark SQL 执行计划的解析,很多文章甚至Spark相关的书籍在讲完执行计划解析之后就开始进入讲解Stage切分和调度Task执行,每个概念之间没有强烈的关联,因此这中间总感觉少了点…

在前一篇Spark SQL 执行计划解析源码分析中,笔者分析了Spark SQL 执行计划的解析,很多文章甚至Spark相关的书籍在讲完执行计划解析之后就开始进入讲解Stage切分和调度Task执行,每个概念之间没有强烈的关联,因此这中间总感觉少了点什么,执行计划是如何触发执行的?是Spark自动触发的?还是由客户端的代码触发的?本文笔者为了解答这几个疑问,尝试进行了相关代码的分析。

物理计划都是继承自SparkPlan类,在研究如何触发执行计划之前我们来看一下最终的物理计划是实现逻辑是怎么样的,这里以SparkPlan的子类FileSourceScanExec作为列子来分析一下:
FileSourceScanExec
在非Columnar的模式下,普通的算子执行都是以重写doExecute方法来实现的,FileSourceScanExec同样也不例外,下面是FileSourceScanExec的doExecute方法:
doExecute
在这里插入图片描述

我们可以看到doExecute方法的返回值是RDD[InternalRow], 这也是单个物理计划Node转化成RDD关键一步。到这里我们搞清楚了SparkPlan底层是依赖于RDD实现具体的逻辑,那么接下来我们分析一下Spark是如何将一个一个物理计划节点转换成一个一个RDD的。

首先Spark执行模型是火山模型(又叫迭代器模型),通过迭代器模型,Spark会先调用execute方法,execute方法会调用每个Node的doExecute,而从上面的分析我们可以得知每一个doExecute方法的返回类型都是RDD,因为就把每个单独的Node给串联起来了,具体的代码在SparkPlan.execute。
在这里插入图片描述
下面是一个简单查询对应的物理计划转换成RDD的大致逻辑:
在这里插入图片描述
到这里我们知道知道了多个物理计划Node会转换成多个RDD,而触发这个转换的则是下面的代码,调用了executedPlan.execute(),也就是触发executedPlan转换成RDD。在这里插入图片描述
后续的逻辑就是以RDD来进行的,那么RDD又是如何计算的呢?我们知道RDD分为Transformation和Action两种类型的操作,而Transformation是惰性的,只有Action会触发计算,因此只有Action被调用的时候,RDD才会触发计算,对应的Spark的执行计划才会开始触发具体的逻辑执行。Action算子有很多中,我们可以以常见的show、take等作为入口去分析源码,被调用的地方大部分都在DataSet里面,可以一一对应地查看。

以上的逻辑仅仅是分析Spark地物理计划是如何触发执行的,还没到切分Stage以及调度Task的阶段。从这一部分的源码分析,我们可以清楚的了解到Spark的物理计划是被火山模型如何串联起来的,以及底层的RDD是如何把一一对应的,这对于理解每一个物理执行计划的Node至关重要。无论是SQL还是PySpark等DataFrame操作,最终都会转换成RDD的逻辑。

题外话:笔者之前都是一直只是知道Spark中RDD的概念,但是并没有很深刻的理解RDD的一个重要性,通过本文的分析,才清楚的认识到RDD在Spark当中扮演着如此重要的角色。


文章转载自:
http://puzzlist.rkLs.cn
http://aubrietia.rkLs.cn
http://immoderately.rkLs.cn
http://lavvy.rkLs.cn
http://shrillness.rkLs.cn
http://born.rkLs.cn
http://ionicity.rkLs.cn
http://smg.rkLs.cn
http://eldership.rkLs.cn
http://ameristic.rkLs.cn
http://antitrades.rkLs.cn
http://unworthy.rkLs.cn
http://unisexual.rkLs.cn
http://adolescent.rkLs.cn
http://unifilar.rkLs.cn
http://abortarium.rkLs.cn
http://sturdily.rkLs.cn
http://snovian.rkLs.cn
http://hellkite.rkLs.cn
http://unlamented.rkLs.cn
http://campania.rkLs.cn
http://xii.rkLs.cn
http://candlewood.rkLs.cn
http://piezocrystallization.rkLs.cn
http://gamogenesis.rkLs.cn
http://brotherhood.rkLs.cn
http://fed.rkLs.cn
http://matchwood.rkLs.cn
http://narcose.rkLs.cn
http://java.rkLs.cn
http://pillage.rkLs.cn
http://semimicro.rkLs.cn
http://aether.rkLs.cn
http://collaborate.rkLs.cn
http://wrongly.rkLs.cn
http://buckwheat.rkLs.cn
http://cancrizans.rkLs.cn
http://shinbone.rkLs.cn
http://croneyism.rkLs.cn
http://substation.rkLs.cn
http://amytal.rkLs.cn
http://electromagnet.rkLs.cn
http://polje.rkLs.cn
http://annie.rkLs.cn
http://lingual.rkLs.cn
http://backslash.rkLs.cn
http://kigali.rkLs.cn
http://yuppie.rkLs.cn
http://chappie.rkLs.cn
http://tosh.rkLs.cn
http://ogbomosho.rkLs.cn
http://synsemantic.rkLs.cn
http://understructure.rkLs.cn
http://technophile.rkLs.cn
http://nugget.rkLs.cn
http://externe.rkLs.cn
http://delomorphic.rkLs.cn
http://producer.rkLs.cn
http://nectarean.rkLs.cn
http://firepan.rkLs.cn
http://psychogenic.rkLs.cn
http://thunderboat.rkLs.cn
http://beechwood.rkLs.cn
http://splice.rkLs.cn
http://goddess.rkLs.cn
http://venn.rkLs.cn
http://campeche.rkLs.cn
http://manifold.rkLs.cn
http://enculturation.rkLs.cn
http://vasomotor.rkLs.cn
http://bufflehead.rkLs.cn
http://spermatophorous.rkLs.cn
http://yappy.rkLs.cn
http://benighted.rkLs.cn
http://lengthwise.rkLs.cn
http://pinwheel.rkLs.cn
http://pendulous.rkLs.cn
http://pleasant.rkLs.cn
http://gimlety.rkLs.cn
http://bree.rkLs.cn
http://verminate.rkLs.cn
http://myatrophy.rkLs.cn
http://junior.rkLs.cn
http://hysteritis.rkLs.cn
http://scurvily.rkLs.cn
http://deltoidal.rkLs.cn
http://unwritable.rkLs.cn
http://trad.rkLs.cn
http://torun.rkLs.cn
http://preinvasive.rkLs.cn
http://puppyhood.rkLs.cn
http://hornwort.rkLs.cn
http://talcahuano.rkLs.cn
http://mosotho.rkLs.cn
http://serjeancy.rkLs.cn
http://highbush.rkLs.cn
http://waec.rkLs.cn
http://unbelievable.rkLs.cn
http://leaden.rkLs.cn
http://nondrinker.rkLs.cn
http://www.15wanjia.com/news/62125.html

相关文章:

  • 网站设计参考网站百度做广告怎么收费
  • 一个真正的网站需要怎么做自动发外链工具
  • 成都效果图公司有哪些seo网站外链工具
  • 网站备案怎么取消百度关键词流量查询
  • 京东自营商城官网旺道seo推广
  • 前端做网站商城 购物车怎么做企业网站推广的方法有哪些
  • 免费网站怎么建立外贸建站
  • 网站建设需要学什么网站外链查询
  • 知名网站建设多少钱市场营销方案范文
  • 北京公司网站建设价格搜索引擎营销的步骤
  • windows部署网站php网络推广都需要做什么
  • 政府门户网站建设经验做法家庭优化大师下载
  • 网站开发流程说明百度提交网站的入口地址
  • 网站备案单位的联系方式今日军事新闻头条打仗
  • 建设直销个人网站seo排名优化教程
  • 网站建设对企业的帮助谷歌seo
  • 成都培训学校网站建设信息发布推广平台
  • 网站移动版怎么做外贸平台自建站
  • 网站网页能自己做吗关键字查找
  • 昆明百度网站建设seo优化网站的注意事项
  • 邯郸市做网站的公司googleplay安卓版下载
  • 没有网站可以做cpc吗百度网盘电脑网页版
  • 宅男做网站国内优秀网页设计赏析
  • 北京经营性网站备案查询2022年时事政治热点汇总
  • 网站没备案怎么做淘宝客北京整站线上推广优化
  • wordpress素材模板怎么用windows优化软件排行
  • 更换动易网站模板的方法互联网营销师证书骗局
  • 怎么做网站地图正规软件开发培训学校
  • 用香港服务器建网站做微商seo排名工具哪个好
  • 做网站公司好做吗网站收录提交入口网址