![剖析spark作業(yè)運行機制_第1頁](http://file4.renrendoc.com/view/03adae37c808cda5936eea2c058ef923/03adae37c808cda5936eea2c058ef9231.gif)
![剖析spark作業(yè)運行機制_第2頁](http://file4.renrendoc.com/view/03adae37c808cda5936eea2c058ef923/03adae37c808cda5936eea2c058ef9232.gif)
![剖析spark作業(yè)運行機制_第3頁](http://file4.renrendoc.com/view/03adae37c808cda5936eea2c058ef923/03adae37c808cda5936eea2c058ef9233.gif)
![剖析spark作業(yè)運行機制_第4頁](http://file4.renrendoc.com/view/03adae37c808cda5936eea2c058ef923/03adae37c808cda5936eea2c058ef9234.gif)
![剖析spark作業(yè)運行機制_第5頁](http://file4.renrendoc.com/view/03adae37c808cda5936eea2c058ef923/03adae37c808cda5936eea2c058ef9235.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
剖析spark作業(yè)運行機制主要內(nèi)容2Spark運行機制Spark運行機制特點3一、spark運行機制4Spark運行機制流程圖5Spark運行機制構(gòu)建SparkApplication的運行環(huán)境,啟動SparkContextSparkContext向資源管理器(可以是Standalone,Mesos,Yarn)申請運行Executor資源,并啟動StandaloneExecutorbackend,Executor向SparkContext申請TaskSparkContext將應(yīng)用程序分發(fā)給ExecutorSparkContext構(gòu)建成DAG圖,將DAG圖分解成Stage、將Taskset發(fā)送給TaskScheduler,最后由TaskScheduler將Task發(fā)送給Executor運行Task在Executor上運行,運行完釋放所有資源
6Spark運行機制1)第一步:生成RDD
Spark本身對RDD的操作模式是惰性計算。在惰性計算機制中,盡管每一次算子操作都會將一個RDD轉(zhuǎn)換成一個新的RDD,并且邏輯上會順序的執(zhí)行這一系列計算,但是這些RDD的操作并不是立即執(zhí)行的,而是會等到出現(xiàn)行動算子時才觸發(fā)整個RDD操作序列,將之前的所有算子操作形成一個有向無環(huán)圖(DirectedAcyclicGraph,DAG),每個有向無環(huán)圖再觸發(fā)執(zhí)行一個作業(yè)(Job)。例如,WordCount程序中,只有程序執(zhí)行到saveAsTextFile時,Spark才對RDD進行真正的處理,將之前的flatMap、map、reduceByKey和saveAsTextFile這些算子連成一個有向無環(huán)圖,并向Spark提交該作業(yè)。
采用惰性計算的優(yōu)勢:
1.相關(guān)的操作序列可以進行連續(xù)計算,不用為存儲的中間結(jié)果離散的獨立分配內(nèi)存空間;
2.節(jié)省存儲空間,為之后對RDD變換操作的優(yōu)惠提供了條件;
7Spark運行機制(2)第二步:生成Stage
Driver節(jié)點中的DAGSchedule實例會對有向無環(huán)圖中節(jié)點間的依賴關(guān)系進行遍歷,將所有操作切分為多個調(diào)度階段(Stage);
(3)第三步:生成Task
每個Stage需要轉(zhuǎn)換成任務(wù)在集群中的Worker節(jié)點上執(zhí)行,因此,由Driver節(jié)點中的TaskSchedule實例將Stage轉(zhuǎn)換為Task,并提交到Worker節(jié)點的Executor進程中執(zhí)行;8二、RDD特點9RDD特點1.Alistofpartitions2.Afunctionforcomputingeachsplit3.AlistofdependenciesonotherRDDs4.Optionally,aPartitionerforkey-valueRDDs5.Optionally,alistofpreferredlocationstocomputeeachspliton101.Alistofpartitions
RDD由很多partition構(gòu)成,在spark中,計算式,有多少partition就對應(yīng)有多少個task來執(zhí)行
一組分片(partition),即數(shù)據(jù)集的基本組成單位,對于RDD來說,每個分片都會被一個計算任務(wù)處理,并決定并行計算的粒度。用戶可以在創(chuàng)建RDD時指定RDD的分片個數(shù),如果沒有指定,那么就會采用默認值。默認值就是程序所分配到的CPUCore的數(shù)目。每個分配的存儲是由BlockManager實現(xiàn)的,每個分區(qū)都會被邏輯映射成BlockManager的一個Block,而這個Block會被一個Task負責計算。112.Afunctionforcomputingeachsplit
對RDD做計算,相當于對RDD的每個split或partition做計算
Spark中的RDD的計算是以分片為單位的,每個RDD都會實現(xiàn)compute函數(shù)以達到這個目的。compute函數(shù)會對迭代器進行復合,不需要保存每次計算的結(jié)果123.AlistofdependenciesonotherRDDs
RDD之間有依賴關(guān)系,可溯源
RDD的每次轉(zhuǎn)換都會生成一個新的RDD,所以RDD之間就會形成類似于流水線一樣的前后依賴關(guān)系。在部分分區(qū)數(shù)據(jù)丟失時,Spark可以通過這個依賴關(guān)系重新計算丟失的分區(qū)數(shù)據(jù),而不是對RDD的所有分區(qū)進行重新計算134.Optionally,aPartitionerforkey-valueRDDs
如果RDD里面存的數(shù)據(jù)是key-value形式,則可以傳遞一個自定義的Partitioner進行重新分區(qū),比如可以按key的hash值分區(qū)
一個partitioner,即RDD的分片函數(shù)。當前Spark中實現(xiàn)了兩種類型的分片函數(shù),一個是基于哈希的HashPartitioner,另外一個基于范圍的RangePartitioner。只有對于key-value的RDD,才會有Partitioner,非key-value的RDD的Partitioner的值是None。Partitioner函數(shù)不但決定了RDD本身的分片數(shù)量,也決定了parentRDDShuffle輸出時的分片數(shù)量145.Optionally,alistofpreferredlocationstocomputeeachspliton
最優(yōu)的位置去計算,也就是數(shù)據(jù)的本地性
計算每個split時,在split所在機器的本地上運行task是最好的,避免了數(shù)據(jù)的移動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年男女裝恤衫項目投資可行性研究分析報告
- 2025年度文化創(chuàng)意園場地租賃合同樣本
- 2025年度建筑工程施工總承包合同標準文本修訂版
- 2025年度建筑工程施工安全生產(chǎn)協(xié)議范本
- 2025年度建筑物業(yè)維保工程竣工驗收報告編制合同
- 2025年度網(wǎng)絡(luò)安全防護服務(wù)合同變更協(xié)議-@-1
- 2025年度企業(yè)破產(chǎn)重整法律服務(wù)合同樣本
- 2025年度跨境并購盡職調(diào)查專項合同
- 2025年度家電維修配件供應(yīng)合同
- 2025年度外資企業(yè)外幣資金借貸合同
- 教學的模樣讀書分享
- 油庫應(yīng)急處置培訓
- 新環(huán)境下人力資源體系建設(shè)方案
- 2024年秋新滬科版物理八年級上冊 第二節(jié) 測量:物體的質(zhì)量 教學課件
- 火針療法緩解上寒下熱證候群焦慮抑郁情緒的研究
- 7.2維護祖國統(tǒng)一 (課件) 2024-2025學年九年級道德與法治上冊 (統(tǒng)編版)
- 直播帶貨基本操作流程(直播帶貨流程完整版)
- 多旋翼無人機駕駛員執(zhí)照(CAAC)備考試題庫大全-下部分
- 管理學專業(yè):管理基礎(chǔ)知識試題庫(附含答案)
- 醫(yī)療器械質(zhì)量安全風險會商管理制度
- 新疆維吾爾自治區(qū)2024屆高三下學期三模試題 語文試題
評論
0/150
提交評論