最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Spark中Job 調(diào)度流程是怎么樣的?

2023-02-28 17:08 作者:ingemar-  | 我要投稿

Spark Application應(yīng)用的用戶代碼都是基于RDD的一系列計(jì)算操作,實(shí)際運(yùn)行時(shí),這些計(jì)算操作是Lazy執(zhí)行的,并不是所有的RDD操作都會(huì)觸發(fā)Spark往Cluster上提交實(shí)際作業(yè),基本上只有一些需要返回?cái)?shù)據(jù)或者向外部輸出的操作才會(huì)觸發(fā)實(shí)際計(jì)算工作(Action算子),其它的變換操作基本上只是生成對(duì)應(yīng)的RDD記錄依賴關(guān)系(Transformation算子)。

當(dāng)啟動(dòng)Spark Application的時(shí)候,運(yùn)行MAIN函數(shù),首先創(chuàng)建SparkContext對(duì)象(構(gòu)建DAGScheduler和TaskScheduler)。

第一點(diǎn)、DAGScheduler實(shí)例對(duì)象

將每個(gè)Job的DAG圖劃分為Stage,依據(jù)RDD之間依賴為寬依賴(產(chǎn)生Shuffle)

第二點(diǎn)、TaskScheduler實(shí)例對(duì)象

調(diào)度每個(gè)Stage中所有Task:TaskSet,發(fā)送到Executor上執(zhí)行

當(dāng)RDD調(diào)用Action函數(shù)(比如count、saveTextFile或foreachPartition)時(shí),觸發(fā)一個(gè)Job執(zhí)行,調(diào)度中流程如下圖所示:

Spark RDD通過其Transactions操作,形成了RDD血緣關(guān)系圖,即DAG,最后通過Action的調(diào)用,觸發(fā)Job并調(diào)度執(zhí)行。

1)、DAGScheduler負(fù)責(zé)Stage級(jí)的調(diào)度,主要是將DAG切分成若干Stages,并將每個(gè)Stage打包成TaskSet交給TaskScheduler調(diào)度。

2)、TaskScheduler負(fù)責(zé)Task級(jí)的調(diào)度,將DAGScheduler給過來的TaskSet按照指定的調(diào)度策略分發(fā)到Executor上執(zhí)行,調(diào)度過程中SchedulerBackend負(fù)責(zé)提供可用資源,其中SchedulerBackend有多種實(shí)現(xiàn),分別對(duì)接不同的資源管理系統(tǒng)。

Spark的任務(wù)調(diào)度總體來說分兩路進(jìn)行,一路是Stage級(jí)的調(diào)度,一路是Task級(jí)的調(diào)度。


一個(gè)Spark應(yīng)用程序包括Job、Stage及Task:

第一:Job是以Action方法為界,遇到一個(gè)Action方法則觸發(fā)一個(gè)Job;

第二:Stage是Job的子集,以RDD寬依賴(即Shuffle)為界,遇到Shuffle做一次劃分;

第三:Task是Stage的子集,以并行度(分區(qū)數(shù))來衡量,分區(qū)數(shù)是多少,則有多少個(gè)task。


Spark中Job 調(diào)度流程是怎么樣的?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
武安市| 当涂县| 桦南县| 滦南县| 固安县| 南城县| 康乐县| 鄂温| 扎赉特旗| 望城县| 成都市| 葵青区| 修水县| 油尖旺区| 根河市| 定边县| 汨罗市| 阿尔山市| 怀安县| 广安市| 沛县| 曲靖市| 宾阳县| 武强县| 安陆市| 图木舒克市| 林甸县| 贵阳市| 桦甸市| 东源县| 晋中市| 临沭县| 岑巩县| 河北区| 商水县| 麟游县| 大名县| 治多县| 科尔| 贡嘎县| 古交市|