專利名稱:基于檢查點的作業(yè)調(diào)度方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體上涉及網(wǎng)絡(luò)領(lǐng)域,更具體地,涉及基于檢查點的作業(yè)調(diào)度方法和系統(tǒng)。
背景技術(shù):
在目前的網(wǎng)絡(luò)硬件配置中,集群環(huán)境下用戶作業(yè)的運行需要依賴節(jié)點計算環(huán)境的穩(wěn)定,而集群環(huán)境節(jié)點眾多,由于誤操作、硬件故障等不可抗力因素導(dǎo)致作業(yè)停止,為用戶帶來損失。運用檢查點技術(shù),可以在固定時間對用戶作業(yè)進(jìn)行保護(hù),在作業(yè)停止時可以迅速恢復(fù)作業(yè)的運行,減少損失,提高作業(yè)的運行效率。很多軟件自身也有類似的功能,但是缺乏通用性。并且這樣的軟件收費昂貴,用戶難以接受。
發(fā)明內(nèi)容
為解決上述問題,本發(fā)明提供了一種基于檢查點的作業(yè)調(diào)度方法,包括以下步驟 用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;按照預(yù)先設(shè)置的遷移參數(shù),將用戶作業(yè)按時間點進(jìn)行保存,并將時間點設(shè)置為檢查點;當(dāng)用戶作業(yè)異常中斷時,進(jìn)行用戶作業(yè)的再次提交,用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)運行, 讀取與檢查點對應(yīng)的用戶作業(yè)的信息,并繼續(xù)執(zhí)行用戶作業(yè)。其中,當(dāng)用戶作業(yè)沒有異常中斷時,用戶作業(yè)完成。其中,當(dāng)用戶作業(yè)的提交發(fā)生錯誤時,退出用戶作業(yè)。其中,在用戶作業(yè)進(jìn)入隊列進(jìn)行等待的步驟之前,提交用戶作業(yè),并在用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù)。此外,本發(fā)明還提供了一種基于檢查點的作業(yè)調(diào)度系統(tǒng),包括等待模塊,用于使用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;檢查點保存模塊,用于按照預(yù)先設(shè)置的遷移參數(shù),將用戶作業(yè)按時間點進(jìn)行保存,并將時間點設(shè)置為檢查點;其中,用戶作業(yè)異常中斷時,進(jìn)行用戶作業(yè)的再次提交,用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)運行,讀取與檢查點對應(yīng)的用戶作業(yè)的信息,并繼續(xù)執(zhí)行用戶作業(yè)。該系統(tǒng)還包括退出模塊,用于在用戶作業(yè)的提交發(fā)生錯誤時,退出用戶作業(yè)。該系統(tǒng)還包括提交模塊,用于提交用戶作業(yè);以及參數(shù)設(shè)置模塊,用于在用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù)。我們提出的檢查點與作業(yè)調(diào)度系統(tǒng)的結(jié)合技術(shù)可以使得停止的作業(yè)自動重新運行,利用作業(yè)隊列的特性,在作業(yè)是失效的情況下自動重新提交恢復(fù)作業(yè),自動完成作業(yè)的再次運行,并且具有廣泛的用途,適用于大部分的軟件系統(tǒng)。
當(dāng)結(jié)合附圖進(jìn)行閱讀時,根據(jù)下面詳細(xì)的描述可以更好地理解本發(fā)明。應(yīng)該強(qiáng)調(diào)的是,根據(jù)工業(yè)中的標(biāo)準(zhǔn)實踐,各種部件沒有被按比例繪制。實際上,為了清楚的討論,各種部件的尺寸可以被任意增加或減少圖1示出了根據(jù)本發(fā)明的示例性實施例的基于檢查點的作業(yè)調(diào)度方法的流程圖。
具體實施例方式為了實施本發(fā)明的不同部件,以下描述提供了許多不同的實施例或示例。以下描述元件和布置的特定示例以簡化本發(fā)明。當(dāng)然這些僅僅是示例并不打算限定。再者,以下描述中第一部件形成在第二部件上可包括其中第一和第二部件以直接接觸形成的實施例, 并且也可包括其中額外的部件形成插入到第一和第二部件中的實施例,使得第一和第二部件不直接接觸。為了簡明和清楚,可以任意地以不同的尺寸繪制各種部件。本發(fā)明大體的技術(shù)方案思路如下1.利用Checkpoing/Restart技術(shù),對特定時間的進(jìn)程進(jìn)行保護(hù),將保存文件存儲到硬件存儲空間上,當(dāng)用戶進(jìn)程由于異常中斷導(dǎo)致停止運行時,可以迅速從存儲空間的檢查點文件中將進(jìn)程進(jìn)行恢復(fù)。2.利用作業(yè)調(diào)度系統(tǒng),將作業(yè)的再次提交,保證用戶作業(yè)不間斷執(zhí)行。圖1示出了根據(jù)本發(fā)明的示例性實施例的基于檢查點的作業(yè)調(diào)度方法的流程圖。 如圖1所示,本發(fā)明提供了一種基于檢查點的作業(yè)調(diào)度方法,包括以下步驟S101,提交用戶作業(yè),并在用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù);S103,用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;S105,按照預(yù)先設(shè)置的遷移參數(shù),將用戶作業(yè)按時間點進(jìn)行保存,并將時間點設(shè)置為檢查點;當(dāng)用戶作業(yè)異常中斷時,停機(jī)檢查故障問題,其中,當(dāng)故障排除時,通過讀取檢查點所對應(yīng)的用戶作業(yè)信息來重新恢復(fù)用戶作業(yè)。優(yōu)選地,當(dāng)用戶作業(yè)沒有異常中斷時,用戶作業(yè)完成。優(yōu)選地,當(dāng)用戶作業(yè)的提交發(fā)生錯誤時,退出用戶作業(yè)。優(yōu)選地,在用戶作業(yè)進(jìn)入隊列進(jìn)行等待的步驟之前,提交用戶作業(yè),并在用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù)。此外,本發(fā)明還提供了一種基于檢查點的作業(yè)調(diào)度系統(tǒng)(未示出),包括等待模塊,用于使用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;檢查點保存模塊,用于按照預(yù)先設(shè)置的遷移參數(shù),將用戶作業(yè)按時間點進(jìn)行保存,并將時間點設(shè)置為檢查點;其中,用戶作業(yè)異常中斷時,進(jìn)行用戶作業(yè)的再次提交,用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)運行,讀取與檢查點對應(yīng)的用戶作業(yè)的信息,并繼續(xù)執(zhí)行用戶作業(yè)。該系統(tǒng)還包括退出模塊,用于在用戶作業(yè)的提交發(fā)生錯誤時,退出用戶作業(yè)。該系統(tǒng)還包括提交模塊,用于提交用戶作業(yè);以及參數(shù)設(shè)置模塊,用于在用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù)。具體地,可以按照如下流程進(jìn)行處理用戶提交作業(yè),在作業(yè)運行開始時設(shè)置作業(yè)參數(shù)和遷移參數(shù)。在作業(yè)調(diào)度系統(tǒng)中提交作業(yè),作業(yè)進(jìn)入隊列進(jìn)行等待,一旦獲取資源,作業(yè)進(jìn)入內(nèi)存區(qū)域運行,體現(xiàn)為用戶進(jìn)程。按照設(shè)置的遷移參數(shù)時間,作業(yè)進(jìn)程按時進(jìn)行進(jìn)程檢查點保存,將檢查點信息寫入物理存儲區(qū)域。
如果作業(yè)異常中斷,則通過作業(yè)提交系統(tǒng)進(jìn)行作業(yè)的再次提交,此時作業(yè)開始進(jìn)入作業(yè)隊列進(jìn)行排隊,獲得資源后進(jìn)入運行狀態(tài),讀取檢查點信息,繼續(xù)執(zhí)行,如果出錯,則重復(fù)此操作。如果沒有異常中斷,作業(yè)順利完成。
如果作業(yè)提交錯誤,作業(yè)退出。通過上述處理,可以獲得如下技術(shù)效果1.高性能計算環(huán)境中,由于異常中斷導(dǎo)致用戶作業(yè)無法執(zhí)行的情況時有發(fā)生,在檢查點技術(shù)的幫助下,可以按時對用戶作業(yè)進(jìn)行檢查點保護(hù),保證用戶作業(yè)不會因為異常中斷而從新開始。2.利用祖業(yè)調(diào)度系統(tǒng),可以將用戶作業(yè)再次進(jìn)行提交,此技術(shù)可以迅速恢復(fù)用戶作業(yè),保證用戶作業(yè)在異常中斷情況下也能正常運行。上面論述了若干實施例的部件,使得本領(lǐng)域普通技術(shù)人員可以更好地理解本發(fā)明的各個方面。本領(lǐng)域普通技術(shù)人員應(yīng)該理解,可以很容易地使用本發(fā)明作為基礎(chǔ)來設(shè)計或更改其他用于達(dá)到與這里所介紹實施例相同的目的和/或?qū)崿F(xiàn)相同優(yōu)點的處理和結(jié)構(gòu)。本領(lǐng)域普通技術(shù)人員也應(yīng)該意識到,這種等效構(gòu)造并不背離本發(fā)明的精神和范圍,并且在不背離本發(fā)明的精神和范圍的情況下,可以進(jìn)行多種變化、替換以及改變。
權(quán)利要求
1.一種基于檢查點的作業(yè)調(diào)度方法,其特征在于,包括以下步驟用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,所述用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;按照預(yù)先設(shè)置的遷移參數(shù),將所述用戶作業(yè)按時間點進(jìn)行保存,并將所述時間點設(shè)置為檢查點;當(dāng)所述用戶作業(yè)異常中斷時,進(jìn)行所述用戶作業(yè)的再次提交,所述用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,所述用戶作業(yè)運行,讀取與所述檢查點對應(yīng)的所述用戶作業(yè)的信息,并繼續(xù)執(zhí)行所述用戶作業(yè)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述用戶作業(yè)沒有異常中斷時,所述用戶作業(yè)完成。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,當(dāng)所述用戶作業(yè)的提交發(fā)生錯誤時, 退出所述用戶作業(yè)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述用戶作業(yè)進(jìn)入隊列進(jìn)行等待的步驟之前,提交所述用戶作業(yè),并在所述用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和所述遷移參數(shù)。
5.一種基于檢查點的作業(yè)調(diào)度系統(tǒng),其特征在于,包括等待模塊,用于使用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,所述用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;檢查點保存模塊,用于按照預(yù)先設(shè)置的遷移參數(shù),將所述用戶作業(yè)按時間點進(jìn)行保存, 并將所述時間點設(shè)置為檢查點;其中,所述用戶作業(yè)異常中斷時,進(jìn)行所述用戶作業(yè)的再次提交,所述用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,所述用戶作業(yè)運行,讀取與所述檢查點對應(yīng)的所述用戶作業(yè)的信息,并繼續(xù)執(zhí)行所述用戶作業(yè)。
6.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,還包括退出模塊,用于在所述用戶作業(yè)的提交發(fā)生錯誤時,退出所述用戶作業(yè)。
7.根據(jù)權(quán)利要求5所述的系統(tǒng),其特征在于,還包括提交模塊,用于提交所述用戶作業(yè);以及參數(shù)設(shè)置模塊,用于在所述用戶作業(yè)開始時設(shè)置作業(yè)參數(shù)和所述遷移參數(shù)。
全文摘要
本發(fā)明提供了一種基于檢查點的作業(yè)調(diào)度方法,包括以下步驟用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)進(jìn)入內(nèi)存區(qū)域運行;按照預(yù)先設(shè)置的遷移參數(shù),將用戶作業(yè)按時間點進(jìn)行保存,并將時間點設(shè)置為檢查點;當(dāng)用戶作業(yè)異常中斷時,進(jìn)行用戶作業(yè)的再次提交,用戶作業(yè)進(jìn)入隊列進(jìn)行等待,當(dāng)獲取資源時,用戶作業(yè)運行,讀取與檢查點對應(yīng)的用戶作業(yè)的信息,并繼續(xù)執(zhí)行用戶作業(yè)。此外,本發(fā)明還提供了一種基于檢查點的作業(yè)調(diào)度系統(tǒng)。
文檔編號G06F9/48GK102289392SQ20111026536
公開日2011年12月21日 申請日期2011年9月8日 優(yōu)先權(quán)日2011年9月8日
發(fā)明者戴榮, 李斌, 李程, 王璟, 許濤, 馬少杰 申請人:曙光信息產(chǎn)業(yè)股份有限公司