一.driver & executer
driver:建立spark上下文物件的應用程式稱之為driver,或者驅動器;只要建立spark上下文物件的類,可以稱之為driver類
* 功能:傳送任務給executor進行計算
* 總結:除executoru運算元計算功能之外的**都屬於driver
executor:接收認為並執行任務,稱之為執行器(也就是說把計算的任務交給執行器,進行計算)
* 功能:對任務進行計算,把計算結果反饋給driver
* 總結:所有運算元當中的計算功能全部由executor來執行的
二.shuffle & 寬依賴
shuffle:對資料進行打亂重組的運算元,說明進行shuffle運算。(即為寬依賴)
寬依賴:是劃分階段的乙個標準。是需要進行等待的
窄依賴:除了寬依賴其他的都是窄依賴,不需要等待。可以並行的執行每個分割槽的程式,效能就會得到提高
2)job:乙個action(行動運算元)就會生成乙個job
3)stage(階段):根據rdd之間的依賴關係的不通過將job劃分不同的stage,遇到乙個寬依賴則劃分乙個stage。spark程式執行的個數為1+shuffle的個數
4)task(任務):乙個stage(階段)可以有多個任務(taskset),將stage劃分的結果傳送到不同的executor執行,即為乙個task
Spark筆記三之RDD,運算元
rdd核心概念 resilientdistributed dataset,彈性分布式資料集 1是唯讀的,分割槽記錄的集合物件 2分割槽 partition 是rdd的基本組成單位,其決定了平行計算的粒度。應用程式對rdd的轉換最終都是對其分割槽的轉換。3使用者可以指定rdd的分割槽個數,如果不指定則...
Spark學習之RDD程式設計(一)
rdd是spark的核心概念,它是乙個可讀的 可分割槽的分布式資料集,這個資料集的全部或部分可以快取在記憶體中,可在多次計算間重用。spark用scala語言實現了rdd的api,我們可以通過呼叫api實現對rdd的各種操作,從而實現各種複雜的應用。spark採用textfile 方法從檔案系統中載...
Spark之RDD的屬性
1.一組分片 partition 即資料集的基本組成單位。對於rdd來說,每個分片都會被乙個計算任務處理,並決定平行計算的粒度。使用者可以在建立rdd時指定rdd的分片個數,如果沒有指定,那麼就會採用預設值。預設值就是程式所分配到的cpu core的數目。2.乙個計算每個分割槽的函式。spark中r...