Spark調(diào)度架構原理詳解-創(chuàng)新互聯(lián)

1.啟動spark集群,就是執(zhí)行sbin/start-all.sh,啟動master和多個worker節(jié)點,master主要作為集群的管理和監(jiān)控,worker節(jié)點主要擔任運行各個application的任務。master節(jié)點需要讓worker節(jié)點匯報自身狀況,比如CPU,內(nèi)存多大,這個過程都是通過心跳機制來完成的

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供夏邑網(wǎng)站建設、夏邑做網(wǎng)站、夏邑網(wǎng)站設計、夏邑網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、夏邑企業(yè)網(wǎng)站模板建站服務,10余年夏邑做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。

2.master收到worker的匯報信息之后,會給予worker信息

3.driver提交任務給spark集群[driver和master之間的通信是通過AKKAactor來做的,也就是說master是akkaactor異步通信模型中的一個actor模型,driver也是一樣,driver異步向mater發(fā)送注冊信息(registerApplication)異步注冊信息]

4.master節(jié)點對application預估,7個G的內(nèi)存完成任務,對任務進行分配,每一個worker節(jié)點上都分配3.5G的內(nèi)存去執(zhí)行任務,在master就對各個worker上的任務進行整體的監(jiān)控調(diào)度

5.worker節(jié)點領到任務,開始執(zhí)行,在worker節(jié)點上啟動相應的executor進程來執(zhí)行,每個executor中都有一個線程池的概念,里面存有多個task線程

6.executor會從線程池中取出task去計算rddpatition中的數(shù)據(jù),transformation操作,action操作

7.worker節(jié)點向driver節(jié)點匯報計算狀態(tài)

通過本地并行化集合創(chuàng)建RDD

public class JavaLocalSumApp{
	public static void main(String[] args){
		SparkConf conf = new SparkConf().setAppName("JavaLocalSumApp");
		JavaSparkContext sc = new JavaSparkContext(conf);
		List<Integer> list = Arrays.asList(1,3,4,5,6,7,8);
		//通過本地并行化集合創(chuàng)建RDD
		JavaRDD <Integer> listRDD = sc.parallelize(list);
		//求和
		Integer sum = listRDD.reduce(new Function2<Integer,Integer,Integer,Integer>(){
			@Override
			    public Integer call(Integer v1,Integer v2) throws Exception{
				return v1+v2;
			}
		}
		);
		System.out.println(sum)
	}
}
//java 中的函數(shù)式編程,需要將編譯器設置成1.8
listRDD.reduce((v1,v2)=> v1+v2)

分享標題:Spark調(diào)度架構原理詳解-創(chuàng)新互聯(lián)
文章分享:http://muchs.cn/article32/dshhpc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名虛擬主機、網(wǎng)站設計公司、企業(yè)網(wǎng)站制作、網(wǎng)站建設搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)