摘要: Worker所起的作用有以下几个: 1. 接受Master的指令,启动或者杀掉Executor 2. 接受Master的指令,启动或者杀掉Driver 3. 报告Executor/Driver的状态到Master 4. 心跳到Master,心跳超时则Master认为Worker已经挂了不能工作了 5 阅读全文
posted @ 2017-12-21 16:17 爱近在咫尺 阅读(509) 评论(0) 推荐(0)
摘要: Master是通过schedule方法进行资源调度,告知worker启动executor等。 一 schedule方法 /** * 前面分析的都是怎样将资源,如worker、executor、Application等加入到各自的等待队列中(失败 完成 异常等等). * 在等待的应用程序中调度当前可用 阅读全文
posted @ 2017-12-19 15:15 爱近在咫尺 阅读(583) 评论(0) 推荐(0)
摘要: 当我们编写完Spark应用后,在机器上提交它时,一般都是通过编写shell脚本,其中有个命令是spark-submit,提交后程序会通过某种运行模式来在集群中运行目前接触到的为Standalone模式,这种模式会通过反射的方式,创建一个Driver进程出来。 Driver进程会执行我们编写的Spar 阅读全文
posted @ 2017-12-19 12:45 爱近在咫尺 阅读(119) 评论(0) 推荐(0)
摘要: 这部分直接看源码会比较直观!!! [注]本篇是对第二篇中间的Master状态改变以及注册机制进行剖析 master注册机制原理图如下 , 其实就是将Application信息 , Driver信息和所有的Worker信息加入缓存队列中. 1. Application的注册 case Register 阅读全文
posted @ 2017-12-18 18:17 爱近在咫尺 阅读(172) 评论(0) 推荐(1)
摘要: 原理剖析 Master实际上可以配置两个(防止单点故障),那么Spark原生的standalone模式是支持Master主备切换的。也就是说,当Active Master节点挂掉时,可以将StandBy master节点切换为Active Master。 Spark Master主备切换可以基于两种 阅读全文
posted @ 2017-12-18 14:57 爱近在咫尺 阅读(632) 评论(0) 推荐(1)
摘要: 要点: 代码针对于 spark 1.6.1源码 1, TaskScheduler如何注册application, executor如何反注册 2, DAGScheduler 3, spark UI 一、SparkConf概述 SparkContext需要传入SparkConf来进行初始化,Spark 阅读全文
posted @ 2017-12-17 21:16 爱近在咫尺 阅读(320) 评论(0) 推荐(1)