driver完成所有任務的排程和executor與cluster之間的協調。
分為client和cluster模式。client模式是指driver在任務提交的機器上執行,cluster模式是指隨機選擇一台機器執行。
job是指指令碼中的action,乙個action對應了乙個job(transformation不會對應乙個job)
stage組成action/job。乙個job可以對應了多個stage。乙個job中劃分stage的重要依據是是否又shuffle發生,也就是是否會發生資料的重新組織。
乙個stage又會被劃分成多個task進行執行,只有在同乙個stage中的所有task結束後才能執行下乙個stage中的task。
task是spark中的執行單元。乙個task由集群上某個節點上的某個executor執行。
乙個節點由多個executor組成;乙個executor由多個core組成;乙個core一次只能執行乙個task;每個task執行的結果就是生成目標rdd的乙個partition。
file是指輸入的資料,一般是以檔案的方式儲存在hdfs上。
block是指每乙個file包含的塊。
spark在讀取files的時候會根據具體資料格式對應的input format來進行解析,一般是將多個block合併成為乙個輸入分片,成為inputsplit。然後將這些輸入分片生成具體的task,inputsplit和task時一一對應的關係。
分布式系統 Spark
特點 粗粒度的變換。如 map,filter,join 行為 需要得出結果時呼叫 5部分操作意義 資料分割槽集 partitions partition是資料集的最小單位,即乙個shard 位置preferredlocations 輸入partition,輸出是該資料所在的位置 此分割槽在哪台機器上...
集群和分布式相關筆記
docker 容器集群管理平台 web 資料庫 快取 訊息佇列 虛擬機器彈性能力較弱,部署效率低,人為干預較多,可靠性差 預留大量機器和服務例項,資源沒有得到充分使用產生浪費 分布式系統的核心理念是讓多台伺服器協同工作,完成單台伺服器無法處理的任務,尤其是高併發或者大資料量的任務。所有伺服器一律不要...
spark分布式執行xgboost
coding utf 8 import os os.environ pyspark submit args jars data pycharm zhanglong pysparkxgboostnew xgboost4j spark 0.90.jar,data pycharm zhanglong py...