一種作業(yè)調(diào)度方法及作業(yè)調(diào)度系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種作業(yè)調(diào)度方法及作業(yè)調(diào)度系統(tǒng)。所述作業(yè)調(diào)度系統(tǒng)包括作業(yè)提交設(shè)備、以及由主服務(wù)器及多個(gè)子服務(wù)器組成的服務(wù)器集群。所述主服務(wù)器用于接收到服務(wù)器集群中任意一臺(tái)子服務(wù)器M針對(duì)待處理作業(yè)隊(duì)列中的第j個(gè)作業(yè)提交的任務(wù)處理請(qǐng)求并判斷該臺(tái)子服務(wù)器M并非第j個(gè)作業(yè)的本地服務(wù)器時(shí),基于資源預(yù)估模型量化計(jì)算一個(gè)數(shù)據(jù)塊傳輸周期T內(nèi)服務(wù)器集群中第j個(gè)作業(yè)的本地服務(wù)器向第j個(gè)作業(yè)發(fā)起的任務(wù)處理請(qǐng)求次數(shù)Ej。所述主服務(wù)器還用于判斷該任務(wù)處理請(qǐng)求次數(shù)Ej低于一次時(shí),將第j個(gè)作業(yè)的處理任務(wù)分配到子服務(wù)器M,或者判斷該任務(wù)處理請(qǐng)求次數(shù)Ej達(dá)到或超過一次時(shí),執(zhí)行第j個(gè)作業(yè)的延時(shí)調(diào)度工作。本發(fā)明可極大提高整體作業(yè)的調(diào)度效率。
【專利說明】一種作業(yè)調(diào)度方法及作業(yè)調(diào)度系統(tǒng)
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及任務(wù)分配【技術(shù)領(lǐng)域】,更具體地說,涉及一種作業(yè)調(diào)度方法及作業(yè)調(diào)度 系統(tǒng)。
【背景技術(shù)】
[0002] 為提高作業(yè)的本地?cái)?shù)據(jù)資源獲取水平,縮短單個(gè)作業(yè)的執(zhí)行時(shí)間,靜態(tài)延遲調(diào)度 方法得到了廣泛使用。然而,靜態(tài)延遲調(diào)度方法還存在如下缺陷:
[0003] 1)為確保用戶提交的作業(yè)獲取到本地?cái)?shù)據(jù)資源,提高單個(gè)作業(yè)的執(zhí)行效率,在作 業(yè)未獲取到來自本地?cái)?shù)據(jù)資源的處理請(qǐng)求的情況下,需要進(jìn)行作業(yè)的延時(shí)調(diào)度處理,導(dǎo)致 作業(yè)難以在預(yù)定時(shí)間內(nèi)執(zhí)行完畢。
[0004] 2)采用靜態(tài)延遲調(diào)度方法在提高單個(gè)作業(yè)的執(zhí)行效率的同時(shí),降低了整體作業(yè)的 執(zhí)行效率。
[0005] 因此,如何克服靜態(tài)延遲調(diào)度方法所存在的上述缺陷,開發(fā)一款兼顧單個(gè)作業(yè)的 執(zhí)行效率及整體作業(yè)的執(zhí)行效率的作業(yè)調(diào)度方法已成為亟待解決的問題。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明要解決的技術(shù)問題在于,針對(duì)現(xiàn)有技術(shù)的上述缺陷,提供一種通過手勢動(dòng) 作對(duì)車輛部件進(jìn)行控制的方法及系統(tǒng)。
[0007] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:構(gòu)造一種作業(yè)調(diào)度方法,包括如下 步驟:
[0008] S1)在接收到由服務(wù)器集群中任意一臺(tái)子服務(wù)器Μ針對(duì)待處理作業(yè)隊(duì)列中的第j 個(gè)作業(yè)提交的任務(wù)處理請(qǐng)求時(shí),判斷該臺(tái)子服務(wù)器Μ是否為第j個(gè)作業(yè)的本地服務(wù)器;Μ為 變量,j為遞增變量,Μ彡1,j彡1,且M、j均為正整數(shù);
[0009] S2)如判斷子服務(wù)器Μ并非第j個(gè)作業(yè)的本地服務(wù)器,則基于資源預(yù)估模型量化計(jì) 算一個(gè)數(shù)據(jù)塊傳輸周期T內(nèi)服務(wù)器集群中第j個(gè)作業(yè)的本地服務(wù)器針對(duì)第j個(gè)作業(yè)發(fā)起的 任務(wù)處理請(qǐng)求次數(shù)Ej ;
[0010] S3)判斷該任務(wù)處理請(qǐng)求次數(shù)Ej是否達(dá)到或超過一次;如判斷Ej < 1,則響應(yīng)由子 服務(wù)器Μ提交的第j個(gè)作業(yè)的任務(wù)處理請(qǐng)求,將第j個(gè)作業(yè)的處理任務(wù)分配到子服務(wù)器Μ ; 如判斷&彡1,則執(zhí)行第j個(gè)作業(yè)的延時(shí)調(diào)度工作。
[0011] 在本發(fā)明上述作業(yè)調(diào)度方法中,在所述步驟S1之前還包括如下步驟:
[0012] S0)指定服務(wù)器集群中用于執(zhí)行作業(yè)受理及分配工作的主服務(wù)器,通過該主服務(wù) 器接收用戶通過作業(yè)提交終端提交的作業(yè),并將作業(yè)添加到待處理作業(yè)隊(duì)列。
[0013] 在本發(fā)明上述作業(yè)調(diào)度方法中,所述步驟S0還包括:根據(jù)作業(yè)的提交時(shí)間確定待 處理作業(yè)隊(duì)列中各個(gè)作業(yè)的優(yōu)先級(jí),依照各個(gè)作業(yè)的優(yōu)先級(jí)對(duì)待處理隊(duì)列中的各個(gè)作業(yè)進(jìn) 行排序,以確定各個(gè)作業(yè)的處理順序。
[0014] 在本發(fā)明上述作業(yè)調(diào)度方法中,所述步驟S1中所述判斷子服務(wù)器Μ是否為第j個(gè) 作業(yè)的本地服務(wù)器的步驟包括:通過主服務(wù)器接收服務(wù)器集群中除其之外的任意一臺(tái)子服 務(wù)器Μ針對(duì)第j個(gè)作業(yè)發(fā)起的任務(wù)處理請(qǐng)求,遍歷待處理作業(yè)隊(duì)列,讀取待處理作業(yè)隊(duì)列中 的第j個(gè)作業(yè),并判斷子服務(wù)器Μ是否存儲(chǔ)有用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊;
[0015] 如判斷子服務(wù)器Μ存儲(chǔ)有用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,則判定子服務(wù)器Μ 為第j個(gè)作業(yè)的本地服務(wù)器;
[0016] 如判斷子服務(wù)器Μ未存儲(chǔ)有用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,則判定子服務(wù)器 Μ為非第j個(gè)作業(yè)的本地服務(wù)器。
[0017] 在本發(fā)明上述作業(yè)調(diào)度方法中,所述步驟S1還包括:如判斷子服務(wù)器Μ為本地服 務(wù)器,則響應(yīng)由子服務(wù)器Μ提交的第j個(gè)作業(yè)的任務(wù)處理請(qǐng)求,將第j個(gè)作業(yè)的處理任務(wù)分 配到子服務(wù)器M。
[0018] 在本發(fā)明上述作業(yè)調(diào)度方法中,所述步驟S1還包括在將第j個(gè)作業(yè)的處理任務(wù)分 配到子服務(wù)器Μ之后所進(jìn)行的第j個(gè)作業(yè)的處理步驟,所述第j個(gè)作業(yè)的處理步驟包括:
[0019] 子服務(wù)器Μ查找服務(wù)器集群中第j個(gè)作業(yè)的本地服務(wù)器,拷貝由該本地服務(wù)器存 儲(chǔ)的用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,并依照第j個(gè)作業(yè)對(duì)拷貝的數(shù)據(jù)塊進(jìn)行處理,以將 第j個(gè)作業(yè)執(zhí)行完畢。
[0020] 在本發(fā)明上述作業(yè)調(diào)度方法中,所述步驟S2中用于計(jì)算一個(gè)數(shù)據(jù)塊傳輸周期T內(nèi) 服務(wù)器集群中第j個(gè)作業(yè)的本地服務(wù)器針對(duì)第j個(gè)作業(yè)所提交的任務(wù)處理請(qǐng)求次數(shù)Ej的 資源預(yù)估模型如下所示:
[0021]
【權(quán)利要求】
1. 一種作業(yè)調(diào)度方法,其特征在于,包括如下步驟: 51) 在接收到由服務(wù)器集群(200)中任意一臺(tái)子服務(wù)器Μ針對(duì)待處理作業(yè)隊(duì)列中的第 j個(gè)作業(yè)提交的任務(wù)處理請(qǐng)求時(shí),判斷該臺(tái)子服務(wù)器Μ是否為第j個(gè)作業(yè)的本地服務(wù)器;Μ 為變量,j為遞增變量,Μ彡1,j彡1,且M、j均為正整數(shù); 52) 如判斷子服務(wù)器Μ并非第j個(gè)作業(yè)的本地服務(wù)器,則基于資源預(yù)估模型量化計(jì)算一 個(gè)數(shù)據(jù)塊傳輸周期T內(nèi)服務(wù)器集群(200)中第j個(gè)作業(yè)的本地服務(wù)器針對(duì)第j個(gè)作業(yè)發(fā)起 的任務(wù)處理請(qǐng)求次數(shù)Ej ; 53) 判斷該任務(wù)處理請(qǐng)求次數(shù)&是否達(dá)到或超過一次;如判斷& < 1,則響應(yīng)由子服務(wù) 器Μ提交的第j個(gè)作業(yè)的任務(wù)處理請(qǐng)求,將第j個(gè)作業(yè)的處理任務(wù)分配到子服務(wù)器Μ ;如判 斷&彡1,轉(zhuǎn)而執(zhí)行第j個(gè)作業(yè)的延時(shí)調(diào)度工作。
2. 根據(jù)權(quán)利要求1所述的作業(yè)調(diào)度方法,其特征在于,在所述步驟S1之前還包括如下 步驟: S0)指定服務(wù)器集群(200)中用于執(zhí)行作業(yè)受理及分配工作的主服務(wù)器(201),通過 該主服務(wù)器(201)接收用戶通過作業(yè)提交終端提交的作業(yè),并將作業(yè)添加到待處理作業(yè)隊(duì) 列。
3. 根據(jù)權(quán)利要求2所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S0還包括:根據(jù)作業(yè) 的提交時(shí)間確定待處理作業(yè)隊(duì)列中各個(gè)作業(yè)的優(yōu)先級(jí),依照各個(gè)作業(yè)的優(yōu)先級(jí)對(duì)待處理隊(duì) 列中的各個(gè)作業(yè)進(jìn)行排序,以確定各個(gè)作業(yè)的處理順序。
4. 根據(jù)權(quán)利要求3所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S1中所述判斷子服 務(wù)器Μ是否為第j個(gè)作業(yè)的本地服務(wù)器的步驟包括:通過主服務(wù)器(201)接收服務(wù)器集群 (200)中除其之外的任意一臺(tái)子服務(wù)器Μ針對(duì)第j個(gè)作業(yè)發(fā)起的任務(wù)處理請(qǐng)求,遍歷待處理 作業(yè)隊(duì)列,讀取待處理作業(yè)隊(duì)列中的第j個(gè)作業(yè),并判斷子服務(wù)器Μ是否存儲(chǔ)有用于處理第 j個(gè)作業(yè)所需的數(shù)據(jù)塊; 如判斷子服務(wù)器Μ存儲(chǔ)有用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,則判定子服務(wù)器Μ為第 j個(gè)作業(yè)的本地服務(wù)器; 如判斷子服務(wù)器Μ未存儲(chǔ)有用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,則判定子服務(wù)器Μ為 非第j個(gè)作業(yè)的本地服務(wù)器。
5. 根據(jù)權(quán)利要求4所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S1還包括:如判斷子 服務(wù)器Μ為本地服務(wù)器,則響應(yīng)由子服務(wù)器Μ提交的第j個(gè)作業(yè)的任務(wù)處理請(qǐng)求,將第j個(gè) 作業(yè)的處理任務(wù)分配到子服務(wù)器M。
6. 根據(jù)權(quán)利要求5所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S1還包括在將第j個(gè) 作業(yè)的處理任務(wù)分配到子服務(wù)器Μ之后所進(jìn)行的第j個(gè)作業(yè)的處理步驟,所述第j個(gè)作業(yè) 的處理步驟包括: 子服務(wù)器Μ查找服務(wù)器集群(200)中第j個(gè)作業(yè)的本地服務(wù)器,拷貝由該本地服務(wù)器 存儲(chǔ)的用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,并依照第j個(gè)作業(yè)對(duì)拷貝的數(shù)據(jù)塊進(jìn)行處理,以 將第j個(gè)作業(yè)執(zhí)行完畢。
7. 根據(jù)權(quán)利要求1所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S2中用于計(jì)算一個(gè)數(shù) 據(jù)塊傳輸周期T內(nèi)服務(wù)器集群(200)中第j個(gè)作業(yè)的本地服務(wù)器針對(duì)第j個(gè)作業(yè)所提交的 任務(wù)處理請(qǐng)求次數(shù)Ej的資源預(yù)估模型如下所示: Ej = TX (N/THeat) XSlodP-XP/^^XP/。1111^ ;其中 N表示服務(wù)器集群(200)中的所有子服務(wù)器(202)的數(shù)目; THeat表示服務(wù)器集群(200)中子服務(wù)器(202)的任務(wù)處理請(qǐng)求提交周期; Slotavg表示每個(gè)子服務(wù)器(202)在提交任務(wù)處理請(qǐng)求時(shí)提供的平均時(shí)槽數(shù)目; Psl°t表示每個(gè)子服務(wù)器(202)提供的時(shí)槽中空閑時(shí)槽的概率; 表示服務(wù)器集群(200)中請(qǐng)求處理第j個(gè)作業(yè)的子服務(wù)器(202)為第j個(gè)作 業(yè)的本地服務(wù)器的概率; P/°mp&表示服務(wù)器集群(200)中第j個(gè)作業(yè)的競爭服務(wù)器數(shù)目占服務(wù)器集群(200)中 第j個(gè)作業(yè)的本地服務(wù)器數(shù)目的百分比; 其中,Psl(rt的計(jì)算公式如下所示: pslot _ rpavg^/rpHeat Tavg表示執(zhí)行一個(gè)映射任務(wù)所需時(shí)間; PjkalData的計(jì)算公式如下所示: 卩廣蟲=NodeSj/N ; 此如\_表示服務(wù)器集群(200)中存儲(chǔ)有用于處理第j個(gè)作業(yè)所需數(shù)據(jù)塊的子服務(wù)器 (202)的數(shù)目,即第j個(gè)作業(yè)的本地服務(wù)器的數(shù)目; N表示服務(wù)器集群(200)中的所有服務(wù)器數(shù)目; P/°mp&的計(jì)算公式如下所示: P/卿ete = Nodes/head/NodeSj ; 其中,此(1^/^<1表示服務(wù)器集群(200)中存儲(chǔ)有第j個(gè)作業(yè)的競爭數(shù)據(jù)塊的競爭服務(wù) 器的數(shù)目; 第j個(gè)作業(yè)的競爭數(shù)據(jù)塊定義為:用于處理第j個(gè)作業(yè)以及主服務(wù)器(201)的待處理 作業(yè)隊(duì)列中優(yōu)先級(jí)高于第j個(gè)作業(yè)的其它作業(yè)所需的同一個(gè)數(shù)據(jù)塊; 競爭服務(wù)器定義為:服務(wù)器集群(200)中存儲(chǔ)有所述競爭數(shù)據(jù)塊的子服務(wù)器(202)。
8. 根據(jù)權(quán)利要求1所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S3中所述執(zhí)行第j個(gè) 作業(yè)的延時(shí)調(diào)度工作的步驟包括:拒絕由子服務(wù)器Μ提交的針對(duì)第j個(gè)作業(yè)的當(dāng)前的任務(wù) 處理請(qǐng)求,并將第j個(gè)作業(yè)分配到下一個(gè)數(shù)據(jù)塊傳輸周期T內(nèi)向主服務(wù)器(201)請(qǐng)求處理 第j個(gè)作業(yè)的任意一臺(tái)子服務(wù)器Μ' ;M'為變量,M'彡1,且,為正整數(shù)。
9. 根據(jù)權(quán)利要求8所述的作業(yè)調(diào)度方法,其特征在于,所述步驟S3還包括第j個(gè)作業(yè) 的處理步驟,所述第j個(gè)作業(yè)的處理步驟包括: 子服務(wù)器Μ查找服務(wù)器集群(200)中第j個(gè)作業(yè)的本地服務(wù)器,拷貝該本地服務(wù)器存 儲(chǔ)的用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,并依照第j個(gè)作業(yè)對(duì)該拷貝的數(shù)據(jù)塊進(jìn)行處理,以 將第j個(gè)作業(yè)執(zhí)行完畢; 或者子服務(wù)器M'調(diào)取其存儲(chǔ)的用于處理第j個(gè)作業(yè)所需的數(shù)據(jù)塊,并依照第j個(gè)作業(yè) 對(duì)該拷貝的數(shù)據(jù)塊進(jìn)行處理,以將第j個(gè)作業(yè)執(zhí)行完畢。
10. 根據(jù)權(quán)利要求9所述的作業(yè)調(diào)度方法,其特征在于,在所述步驟S3之后還包括如下 步驟: S4)接收服務(wù)器集群(200)中任意一臺(tái)子服務(wù)器Μ提交的針對(duì)第(j+Ι)個(gè)作業(yè)的任務(wù) 處理請(qǐng)求,并依照所述步驟S1至所述步驟S3執(zhí)行第(j+Ι)個(gè)作業(yè)的調(diào)度工作; 重復(fù)執(zhí)行步驟S4,直至待處理作業(yè)隊(duì)列中的所有作業(yè)均已調(diào)度完畢。
11. 一種采用如權(quán)利要求1至10中任意一臺(tái)項(xiàng)所述的作業(yè)調(diào)度方法的作業(yè)調(diào)度系統(tǒng), 所述作業(yè)調(diào)度系統(tǒng)包括作業(yè)提交設(shè)備(100)、以及由主服務(wù)器(201)及多個(gè)子服務(wù)器(202) 組成的服務(wù)器集群(200),所述主服務(wù)器(201)可接收由所述作業(yè)提交設(shè)備(100)提交的作 業(yè),并將作業(yè)添加到待處理作業(yè)隊(duì)列,其特征在于: 所述主服務(wù)器(201)還用于接收到由服務(wù)器集群(200)中任意一臺(tái)子服務(wù)器Μ針對(duì)待 處理作業(yè)隊(duì)列中的第j個(gè)作業(yè)提交的任務(wù)處理請(qǐng)求并判斷該臺(tái)子服務(wù)器Μ并非第j個(gè)作業(yè) 的本地服務(wù)器時(shí),基于資源預(yù)估模型量化計(jì)算一個(gè)數(shù)據(jù)塊傳輸周期T內(nèi)服務(wù)器集群(200) 中第j個(gè)作業(yè)的本地服務(wù)器向第j個(gè)作業(yè)發(fā)起的任務(wù)處理請(qǐng)求次數(shù)Ej ; 所述主服務(wù)器(201)還用于判斷該任務(wù)處理請(qǐng)求次數(shù)&低于一次時(shí),將第j個(gè)作業(yè)的 處理任務(wù)分配到子服務(wù)器M,或者判斷該任務(wù)處理請(qǐng)求次數(shù)&達(dá)到或超過一次時(shí),執(zhí)行第j 個(gè)作業(yè)的延時(shí)調(diào)度工作。
12. 根據(jù)權(quán)利要求11所述的作業(yè)調(diào)度系統(tǒng),其特征在于,所述資源預(yù)估模型如下所示: & = TX (N/THeat) XSlodP-XP/^^XP/。1111^ ;其中 N表示服務(wù)器集群(200)中的所有子服務(wù)器(202)的數(shù)目; THeat表示服務(wù)器集群(200)中子服務(wù)器(202)的任務(wù)處理請(qǐng)求提交周期; Slotavg表示每個(gè)子服務(wù)器(202)在提交任務(wù)處理請(qǐng)求時(shí)提供的平均時(shí)槽數(shù)目; Psl°t表示每個(gè)子服務(wù)器(202)提供的時(shí)槽中空閑時(shí)槽的概率; 表示服務(wù)器集群(200)中請(qǐng)求處理第j個(gè)作業(yè)的子服務(wù)器(202)為第j個(gè)作 業(yè)的本地服務(wù)器的概率; P/°mp&表示服務(wù)器集群(200)中第j個(gè)作業(yè)的競爭服務(wù)器數(shù)目占服務(wù)器集群(200)中 第j個(gè)作業(yè)的本地服務(wù)器數(shù)目的百分比; 其中,Psl(rt的計(jì)算公式如下所示: pslot rpavg^/rpHeat Tavg表示執(zhí)行一個(gè)映射任務(wù)所需時(shí)間; PjkalData的計(jì)算公式如下所示: 卩廣蟲=NodeSj/N ; 此如\_表示服務(wù)器集群(200)中存儲(chǔ)有用于處理第j個(gè)作業(yè)所需數(shù)據(jù)塊的子服務(wù)器 (202)的數(shù)目,即第j個(gè)作業(yè)的本地服務(wù)器的數(shù)目; N表示服務(wù)器集群(200)中的所有服務(wù)器數(shù)目; P/°mp&的計(jì)算公式如下所示: P/卿ete = Nodes/head/NodeSj ; 其中,此(1^/^<1表示服務(wù)器集群(200)中存儲(chǔ)有第j個(gè)作業(yè)的競爭數(shù)據(jù)塊的競爭服務(wù) 器的數(shù)目; 第j個(gè)作業(yè)的競爭數(shù)據(jù)塊定義為:用于處理第j個(gè)作業(yè)以及主服務(wù)器(201)的待處理 作業(yè)隊(duì)列中優(yōu)先級(jí)高于第j個(gè)作業(yè)的其它作業(yè)所需的同一個(gè)數(shù)據(jù)塊; 競爭服務(wù)器定義為:服務(wù)器集群(200)中存儲(chǔ)有所述競爭數(shù)據(jù)塊的子服務(wù)器(202)。
【文檔編號(hào)】H04L29/08GK104158860SQ201410373085
【公開日】2014年11月19日 申請(qǐng)日期:2014年7月31日 優(yōu)先權(quán)日:2014年7月31日
【發(fā)明者】劉建文, 都政, 井革新, 熊超超, 馮海軍, 徐穎俊, 周志平, 羅文龍, 陳遠(yuǎn)磊 申請(qǐng)人:國家超級(jí)計(jì)算深圳中心(深圳云計(jì)算中心), 深圳云計(jì)算中心有限公司