原创 SparkStream例子HdfsWordCount--Streaming的Job是如何調度的
上一篇“SparkStream例子HdfsWordCount--從Dstream到RDD全過程解析”解析了每個Dstream週期內,是如何生成的RDD的。 該篇描述一下RDD變成Streaming的Job之後,如何到Executor上面執
原创 spark-core_01: $SPARK_HOME/bin/spark-shell
sparkshell腳本的作用:調用spark-submit腳本,並給spark-submit腳本 帶上參數如下參數--classorg.apache.spark.repl.Main --name "Spark shell" "$@" 具
原创 spark-core_07: $SPARK_HOME/sbin/start-slaves.sh腳本分析:
承接“spark-core_05: $SPARK_HOME/sbin/start-all.sh、start-master.sh腳本分析”,在spark-all.sh腳本中會調用start-slaves.sh來啓Worker節點 #!/us
原创 spark-core_04: org.apache.spark.deploy.SparkSubmit源碼分析:
承接上文“org.apache.spark.launcher.Main源碼分析“SparkSubmitArgumentsParser的父類就SparkSubmitOptionParser,在launcher.Main方法執行時用到Opti
原创 spark-core_02: $SPARK_HOME/bin/spark-submit、spark-class腳本分析
繼承上文“spark-core_01: $SPARK_HOME/bin/spark-shell腳本分析”一,$SPARK_HOME/bin/spark-submit#####################################
原创 spark-core_06: $SPARK_HOME/sbin/spark-daemon.sh腳本分析
承接上面“spark-core_05: $SPARK_HOME/sbin/start-all.sh、start-master.sh腳本分析”#!/usr/bin/envbash #Runs a Spark command as a dae
原创 SparkStreaming案例:NetworkWordCount--ReceiverInputDstream的compute方法如何取得Socket預先存放在BlockManager中的數據
1, 還是從這個案例開始object NetworkWordCount { def main(args: Array[String]) { if (args.length < 2) { System.err.pri
原创 spark-core_05: $SPARK_HOME/sbin/start-all.sh、start-master.sh腳本分析:
一、這是$SPARK_HOME/sbin/start-all.sh腳本#!/usr/bin/envbash # Start all spark daemons. 後臺啓動所有spark節點,將master在這個節點中啓動,worker節點
原创 spark-core_10: org.apache.spark.deploy.master.Master源碼解析2--Master這個RpcEndPoint是如何初始化Master
承接上文/** * RpcEndpoint的生命週期又是: onStart -> receive(receiveAndReply)* -> onStop * 這個MasterRpcEndpoint是線程安全的 */ priva
原创 spark-core_29:blockManager.initialize()=》NettyBlockTransferService.init()-NettyServer創建源碼分析
上一節(spark-core_28:Executor初始化過程env.blockManager.initialize(conf.getAppId)- NettyBlockTransferService.init()源碼分析)分析了a、Ne
原创 spark-core_12:org.apache.spark.deploy.master.Master源碼解析4-- 如何清理超時的Woker及zk是如何選舉
承接上文,回到Master的onStart的方法體中 // masterWebUiUrl 值 http://luyl152:8080 masterWebUiUrl = "http://" + masterPublicAdd
原创 spark-core_30:Executor初始化過程env.blockManager.initialize(conf.getAppId)源碼分析
在(spark-core_28及spark-core_29:Executor初始化過程env.blockManager.initialize(conf.getAppId)-NettyBlockTransferService.init()源
原创 spark-core_19:ActorSystem的初始化源碼分析
1,在SparkEnv再創建時調用create(),裏面調用初始ActorSystem注:ActorSystem在後面版本會被RpcEnv替換掉private def create( conf: SparkConf, exec
原创 spark-core_22: SparkDeploySchedulerBackend,TaskSchedulerImpl的初始化源碼分析
1, 在sparkContext初始時會執行// Create and startthe scheduler,這個master是在sparkSubmit.Main方法得到:spark://luyl152:7077,luyl153:707
原创 spark-core_24:註冊RegisterApplication,schedule()分配worker的資源,啓動CoarseGrainedExecutorBackend源碼分析
基於上文(spark-core_23: TaskSchedulerImpl.start()、SparkDeploySchedulerBackend.start()、CoarseGrainedExecutorBackend.start()、