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

创造与魔法官方网站-做自己喜欢的事建站技术布局方式

创造与魔法官方网站-做自己喜欢的事,建站技术布局方式,增改文章发布区功能wordpress,简述软件开发的一般流程基本流程 用户编写的Spark应用程序最开始都要初始化SparkContext。 用户编写的应用程序中,每执行一个action操作,就会触发一个job的执行,一个应用程序中可能会生成多个job执行。一个job如果存在宽依赖,会将shuffle前后划分成两个…

基本流程

用户编写的Spark应用程序最开始都要初始化SparkContext。

用户编写的应用程序中,每执行一个action操作,就会触发一个job的执行,一个应用程序中可能会生成多个job执行。一个job如果存在宽依赖,会将shuffle前后划分成两个stage,前一个stage会将计算结果临时进行存储,后一个stage则进行读取,完成数据交换。

每个stage中,需要执行的计算过程会被划分成多个逻辑相同的一组Task,每个Task会被提交到Executor中运行。当Task运行完成后,会将运行结果返回至Driver中。 

主要组件

Driver端

  1. DAGScheduler:负责将Job划分为Stage,再将Stage划分为TaskSet;
  2. TaskScheduler:负责任务的调度;
  3. SchedulerBackend:负责资源的分配,并把Task提交给Executor中执行。

Executor端

  1. BlockManager:缓存RDD、缓存Task运行结果。

Job提交执行流程

Task提交

SparkContext将RDD的action操作转化为Job,并将Job交给DAGScheduler做进一步处理。

DAGScheduler首选根据shuffle划分stage,根据stage中分区的数量,生成一组Task(即TaskSet),生成Task时还会计算Task的最佳执行位置。DAGScheduler会根据RDD是否进行了缓存来确定是否具有最佳运行位置。

DAGScheduler将Stage生成TaskSet以后,会将TaskSet交给TaskScheduler进行处理,TaskScheduler负责将Task提交到集群中运行,并负责失败重试,为DAGScheduler返回事件信息等。

当有任务提交至TaskScheduler中时,TaskScheduler会通知SchedulerBackend分配计算资源。SchedulerBackend将所有可用的Executor的资源信息转换为WorkerOffer交给TaskScheduler。TaskScheduler负责根据这些WorkerOffer在相应的Executor分配TaskSet中的Task。

SchedulerBackend中通过使用Map结构记录每一个ExecutorData的映射,即可管理所有Executor的CPU使用的情况。为计算任务分配计算资源时,只需要遍历所有的ExecutorData,分配可用的资源即可。

TaskScheduler在接受到DAGScheduler提交的TaskSet以后,会为每个TaskSet创建一个TaskSetManager,用于管理该TaskSet中所有任务的运行。TaskSetManager会根据Task中的最佳运行位置计算TaskSet的所有本地运行级别,本地运行的级别决定了Task最终在哪个Executor中运行。Spark中本地运行级别从小到大可分为进程本地化、节点本地化、无优先位置、机架本地化、任意节点。

Task执行

Executor接收到SchedulerBackend提交的LaunchTask消息后,即可运行该消息中包含的Task。Executor将接收到的Task封装到TaskRunner中,TaskRunner是一个Runnable接口,从而可以将该任务提交到线程池中运行。

当在一个Executor中同时运行多个Task时,多个Task共享Executor中SparkEnv的所有组件,共用Executor中分配的内存。如使用Spark广播变量时,每个Executor中会存在一份,Executor中所有的任务会共享这一份变量。当Executor中的BlockManager缓存了某rdd某分区的数据时,在该Executor上调度使用这个RDD的这个分区的数据的Task执行,可以有效减少网络加载数据的过程,减少网络传输。

当Executor中Task运行完成时,需要将Task的运行结果返回Driver程序,Driver程序根据结果判断该Stage是否计算完成,或者该Job是否计算完成。

http://www.yayakq.cn/news/694023/

相关文章:

  • 涡阳网站优化计算机程序网站开发是什么
  • 保险公司招聘网站网站建设杭州公司
  • 网站建设设计制作包头网站管理建设工作报告
  • 宁波市住房和城乡建设培训中心网站模板网站与 定制网站的 对比
  • 网站开发挣不挣钱宁波网站推广软件哪家强些
  • 免费网站推广的方法创意字体在线生成免费
  • 基于wordpress的网站文山州建设局信息网站
  • 厦门网站建设开发公司乐清本地网
  • 商业案例网站当今做网站的语言有哪些
  • 网站首页弹窗代码星艺装饰集团有限公司官网
  • 利用php做直播网站电子商务app有哪些
  • dede饮食网站模板网站模板 单页
  • 滕州网站设计wordpress性能优化
  • 做企业网站的要点英文网站建设模板下载
  • 中国万网注册网站卖网站模板赚钱吗
  • 成都网站建设案例单招网腾讯官方网站建设
  • 设计网站用什么软件新昌网站建设
  • 做公司 网站建设价格怎么在记事本上做网站
  • 做一个网站建设的流程珠海斗门建设局官方网站
  • c2c网站怎么做域名注册商排名
  • 网站 app开发 财务做帐珠海建站模板源码
  • 广州大石附近做网站的公司百度统计登录
  • 宝安网站建设网页制作模板简单
  • php做原生直播网站网站做支付按流量付费吗
  • 网站管理 官网厦门百度代理
  • 在郑州网站建设wordpress手机建站教程
  • 中学网站建设建博客和建网站哪个好
  • 建设银行信用卡网站多少wordpress增加登陆注册
  • 环保局网站建设方案做网站有哪些要求
  • dede网站名称更改不了医院门户网站建设