專利名稱:基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù)高性能領(lǐng)域,尤其涉及一種基于應(yīng)用特征的異構(gòu)集群作業(yè)
的自適應(yīng)調(diào)度方法和系統(tǒng)。
背景技術(shù):
集群是計(jì)算機(jī)集群的簡稱,它通過一組松散集成的計(jì)算機(jī)軟件和/或硬件連接起 來高度緊密地協(xié)作完成計(jì)算工作。集群中的單個計(jì)算機(jī)通常稱為節(jié)點(diǎn)。集群通常用來改進(jìn) 單個計(jì)算機(jī)的計(jì)算速度和/或可靠性。 高性能領(lǐng)域業(yè)務(wù)軟件的運(yùn)行特點(diǎn)千差萬別,對集群的資源要求不一樣,有的是計(jì) 算密集型,需要很高的CPU處理速度,有的是I/O密集型,需要很高的硬盤I/O速率和換頁 率。而傳統(tǒng)的集群作業(yè)調(diào)度方法無論是先來先服務(wù)(即哪個作業(yè)先到就先運(yùn)行哪個作業(yè)), 還是優(yōu)先級(即哪個作業(yè)的優(yōu)先級高就運(yùn)行哪個作業(yè)),還是回填,都沒有充分考慮高性能 軟件自身的運(yùn)行特點(diǎn)和異構(gòu)集群的物理資源。也就是說,傳統(tǒng)的集群作業(yè)調(diào)度方法選擇使 用什么樣節(jié)點(diǎn)去運(yùn)行作業(yè)與高性能軟件沒有關(guān)系,這樣會導(dǎo)致高性能軟件的效率降低,導(dǎo) 致異構(gòu)集群的使用效率降低。而效率恰恰是高性能軟件的核心指標(biāo)。同樣,使用效率也是 異構(gòu)集群的重要指標(biāo)。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中集群作業(yè)調(diào)度方法存在的沒有考慮高性能軟件運(yùn)行特點(diǎn)和異構(gòu) 集群的特點(diǎn)導(dǎo)致高性能軟件的效率降低、異構(gòu)集群使用效率降低的問題,本發(fā)明的目的在 于提供一種基于應(yīng)用特征的集群作業(yè)自適應(yīng)調(diào)度方法和系統(tǒng),以解決上述問題中的至少之 為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種基于應(yīng)用特征的異構(gòu)集群 作業(yè)自適應(yīng)調(diào)度方法,包括以下步驟作業(yè)調(diào)度服務(wù)器收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信 息,并根據(jù)各個節(jié)點(diǎn)的硬件信息將各個節(jié)點(diǎn)分成具有不同特征的節(jié)點(diǎn)組;作業(yè)調(diào)度中間件 查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn);如果有,作業(yè)調(diào)度服務(wù)器根據(jù)運(yùn)行 特點(diǎn)將當(dāng)前提交的作業(yè)提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行;如果沒有,作業(yè)調(diào)度服務(wù)器將當(dāng) 前提交的作業(yè)提交到任意節(jié)點(diǎn)組去運(yùn)行,作業(yè)調(diào)度中間件記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù) 并根據(jù)運(yùn)行數(shù)據(jù)分析運(yùn)行特點(diǎn),作業(yè)調(diào)度中間件將當(dāng)前提交的作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn) 存儲到數(shù)據(jù)庫中。 根據(jù)本發(fā)明,在作業(yè)調(diào)度服務(wù)器根據(jù)運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè)提交到相應(yīng)特征 的節(jié)點(diǎn)組去運(yùn)行之后,作業(yè)調(diào)度中間件記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并將運(yùn)行數(shù)據(jù)與當(dāng) 前提交的作業(yè)的歷史運(yùn)行數(shù)據(jù)累加之后重新分析運(yùn)行特點(diǎn),然后更新數(shù)據(jù)庫中存儲的當(dāng)前 提交的作業(yè)的運(yùn)行特點(diǎn)。 根據(jù)本發(fā)明,運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、進(jìn)程數(shù)、使用的節(jié)點(diǎn)數(shù)、使用的各節(jié)點(diǎn)內(nèi) 存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行時間和CPU占用時間。
4
根據(jù)本發(fā)明,運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU密集型。 根據(jù)本發(fā)明,內(nèi)存密集型是指內(nèi)存使用量與使用的各節(jié)點(diǎn)內(nèi)存之和的比值大于 90%并且內(nèi)存使用量與進(jìn)程數(shù)的比值大于1G ;CPU密集型是指CPU占用時間與運(yùn)行時間的 比值大于90%。 根據(jù)本發(fā)明,具有不同特征的節(jié)點(diǎn)組包括內(nèi)存大的節(jié)點(diǎn)組和CPU多的節(jié)點(diǎn)組;如 果當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)為內(nèi)存密集型,作業(yè)調(diào)度服務(wù)器就將當(dāng)前提交的作業(yè)提交到 內(nèi)存大的節(jié)點(diǎn)組去運(yùn)行;如果當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)為CPU密集型,作業(yè)調(diào)度服務(wù)器 就將當(dāng)前提交的作業(yè)提交到CPU多的節(jié)點(diǎn)組去運(yùn)行。 相應(yīng)地,本發(fā)明提供了一種基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度系統(tǒng),包括 分組模塊,用于收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,并根據(jù)各個節(jié)點(diǎn)的硬件信息將各個 節(jié)點(diǎn)進(jìn)行分成具有不同特征的節(jié)點(diǎn)組;查詢模塊,用于查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交 的作業(yè)的運(yùn)行特點(diǎn);提交模塊,用于根據(jù)運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè)提交到相應(yīng)特征的節(jié) 點(diǎn)組上去運(yùn)行;記錄模塊,用于記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù);分析模塊,用于分析運(yùn)行 數(shù)據(jù)得出運(yùn)行特點(diǎn),并更新數(shù)據(jù)庫中當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)。 根據(jù)本發(fā)明,運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、進(jìn)程數(shù)、使用的節(jié)點(diǎn)數(shù)、使用的各節(jié)點(diǎn)內(nèi) 存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行時間和CPU占用時間。
根據(jù)本發(fā)明,運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU密集型,內(nèi)存密集型是指內(nèi)存使用 量與使用的各節(jié)點(diǎn)內(nèi)存之和的比值大于90%并且內(nèi)存使用量與進(jìn)程數(shù)的比值大于1G, CPU 密集型是指CPU占用時間與運(yùn)行時間的比值大于90%。 根據(jù)本發(fā)明,分析模塊是將當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)與當(dāng)前提交的作業(yè)的歷史 運(yùn)行數(shù)據(jù)累加之后重新分析運(yùn)行特點(diǎn)。 借助本發(fā)明上述至少一個技術(shù)方案,通過將異構(gòu)集群的各個節(jié)點(diǎn)根據(jù)硬件信息分 成具有不同特征的節(jié)點(diǎn)組,調(diào)度服務(wù)器根據(jù)當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè) 提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行。這樣充分考慮了作業(yè)和異構(gòu)集群自身的特點(diǎn),由適合運(yùn) 行該作業(yè)的節(jié)點(diǎn)組來運(yùn)行,一方面提高了作業(yè)運(yùn)行的效率,對于包含許多作業(yè)的高性能軟 件來說,提高了高性能軟件的效率,同時也提高了異構(gòu)集群的使用效率。而作業(yè)調(diào)度中間件 記錄作業(yè)的每次運(yùn)行數(shù)據(jù),并且在該作業(yè)每次運(yùn)行完畢之后將該作業(yè)的運(yùn)行數(shù)據(jù)與該作業(yè) 的歷史運(yùn)行數(shù)據(jù)累加,重新分析該作業(yè)的運(yùn)行特點(diǎn),從而不斷校正,提高作業(yè)和運(yùn)行節(jié)點(diǎn)組 匹配的準(zhǔn)確度。
圖1是本發(fā)明的基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度方法的流程圖;
圖2是應(yīng)用本發(fā)明的方法的異構(gòu)集群的拓?fù)浣Y(jié)構(gòu)示意圖; 圖3是本發(fā)明的基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
如圖1所示,本發(fā)明的基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度方法包括以下步 驟S110,作業(yè)調(diào)度服務(wù)器收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,并根據(jù)各個節(jié)點(diǎn)的硬件信 息將各個節(jié)點(diǎn)分成具有不同特征的節(jié)點(diǎn)組;S120,作業(yè)調(diào)度中間件查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn);S130,如果有,作業(yè)調(diào)度服務(wù)器根據(jù)運(yùn)行特點(diǎn)將當(dāng)前提交的
作業(yè)提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行;如果沒有,作業(yè)調(diào)度服務(wù)器將當(dāng)前提交的作業(yè)提交
到任意節(jié)點(diǎn)組去運(yùn)行,作業(yè)調(diào)度中間件記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并根據(jù)運(yùn)行數(shù)據(jù)分
析運(yùn)行特點(diǎn),將當(dāng)前提交的作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn)存儲到數(shù)據(jù)庫中。 在步驟S110中,收集的異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息至少包括各個節(jié)點(diǎn)的CPU
的信息(如CPU的主頻、型號)和各個節(jié)點(diǎn)的內(nèi)存的信息。作業(yè)調(diào)度服務(wù)器根據(jù)各個節(jié)點(diǎn)的
硬件信息將各個節(jié)點(diǎn)進(jìn)行分組,硬件信息相同或特點(diǎn)相同的節(jié)點(diǎn)歸為一組,例如將CPU多
的節(jié)點(diǎn)分為一組,將內(nèi)存大的節(jié)點(diǎn)分為一組,從而將異構(gòu)集群的各個節(jié)點(diǎn)分成具有不同硬
件特征的節(jié)點(diǎn)組。 在步驟S120中,作業(yè)調(diào)度中間件查詢專門用于存儲作業(yè)應(yīng)用類型和運(yùn)行特點(diǎn)的 數(shù)據(jù)庫,看是否存儲有當(dāng)前提交的作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn), 一般情況下,應(yīng)用類型相同 的作業(yè)運(yùn)行特點(diǎn)也相同。 在步驟S130中,如果數(shù)據(jù)庫中存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn),作業(yè)調(diào)度中間 件將該運(yùn)行特點(diǎn)通知作業(yè)調(diào)度服務(wù)器,作業(yè)調(diào)度服務(wù)器根據(jù)該運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè) 提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行;如果數(shù)據(jù)庫中沒有存儲當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn),作 業(yè)調(diào)度服務(wù)器將根據(jù)默認(rèn)的調(diào)度策略將當(dāng)前提交的作業(yè)提交到節(jié)點(diǎn)組去運(yùn)行,作業(yè)調(diào)度中 間件記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并根據(jù)運(yùn)行數(shù)據(jù)分析運(yùn)行特點(diǎn),然后將當(dāng)前提交的作 業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn)存儲到數(shù)據(jù)庫中。其中,運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、進(jìn)程數(shù)、使用 的節(jié)點(diǎn)數(shù)、使用的各節(jié)點(diǎn)內(nèi)存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行時間和CPU 占用時間。每次作業(yè)在運(yùn)行完之后,作業(yè)調(diào)度中間件都會記錄下運(yùn)行數(shù)據(jù)。作業(yè)調(diào)度中間 件將當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)與當(dāng)前提交的作業(yè)的歷史運(yùn)行數(shù)據(jù)累加之后重新分析當(dāng) 前提交的作業(yè)的運(yùn)行特點(diǎn),然后更新數(shù)據(jù)庫中存儲的該作業(yè)的運(yùn)行特點(diǎn)。也就是說,該作業(yè) 每運(yùn)行一次,作業(yè)調(diào)度中間件記錄一次運(yùn)行數(shù)據(jù),并將此次運(yùn)行數(shù)據(jù)與該作業(yè)以往的歷次 運(yùn)行數(shù)據(jù)累加,然后重新分析該作業(yè)的運(yùn)行特點(diǎn)。這樣可以防止只根據(jù)一次運(yùn)行數(shù)據(jù)得出 的運(yùn)行特點(diǎn)可能出現(xiàn)的偏差,這是一個不斷校正的過程。該作業(yè)多次運(yùn)行之后,作業(yè)調(diào)度中 間件對該作業(yè)的運(yùn)行特點(diǎn)的分析將更加準(zhǔn)確。運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU密集型。其 中,內(nèi)存密集型是指內(nèi)存使用量與使用的各節(jié)點(diǎn)內(nèi)存之和的比值大于90%并且內(nèi)存使用量 與進(jìn)程數(shù)的比值大于1G ;CPU密集型是指CPU占用時間與運(yùn)行時間的比值大于90%。內(nèi)存 使用量是指該類型作業(yè)的所有的進(jìn)程用到的內(nèi)存之和。 高性能軟件運(yùn)行過程中會有多個作業(yè)需要提交到節(jié)點(diǎn)上去運(yùn)行,通過選擇最合適 作業(yè)的節(jié)點(diǎn)組來運(yùn)行可以提高高性能軟件的運(yùn)行效率。在實(shí)際應(yīng)用中,高性能軟件也可以 通過web界面(網(wǎng)絡(luò)界面)提交到服務(wù)器端。如圖2所示,異構(gòu)集群包括服務(wù)器端和節(jié)點(diǎn) 組,異構(gòu)集群的管理節(jié)點(diǎn)作為異構(gòu)集群的作業(yè)調(diào)度服務(wù)器,也即圖2中所示的服務(wù)器端,服 務(wù)器端運(yùn)行一個web服務(wù)器,客戶端可以通過web瀏覽器連接到web服務(wù)器,與web服務(wù)器 進(jìn)行交互,與服務(wù)器端相連的每個節(jié)點(diǎn)組都具有一定的特征,在客戶端上運(yùn)行高性能軟件, 客戶端產(chǎn)生的作業(yè)由服務(wù)器端進(jìn)行調(diào)度,服務(wù)器端根據(jù)作業(yè)的特征,將該作業(yè)提交到相應(yīng) 特征的節(jié)點(diǎn)組去運(yùn)行。 相應(yīng)地,本發(fā)明提供了一種基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度系統(tǒng)。如圖 3所示,本實(shí)施例的基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度系統(tǒng),包括分組模塊210,用于收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,并根據(jù)各個節(jié)點(diǎn)的硬件信息將各個節(jié)點(diǎn)進(jìn)行分成 具有不同特征的節(jié)點(diǎn)組;查詢模塊220,用于查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的 運(yùn)行特點(diǎn);提交模塊230,用于根據(jù)運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè)提交到相應(yīng)特征的節(jié)點(diǎn)組 上去運(yùn)行;記錄模塊240,用于記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù);分析模塊250,用于分析運(yùn) 行數(shù)據(jù)得出運(yùn)行特點(diǎn),并更新數(shù)據(jù)庫中當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)。 分組模塊210,首先收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,包括各個節(jié)點(diǎn)的CPU的 信息(如CPU的主頻、型號)和各個節(jié)點(diǎn)的內(nèi)存的信息;然后根據(jù)各個節(jié)點(diǎn)的硬件信息將各 個節(jié)點(diǎn)進(jìn)行分組,硬件信息相同或特點(diǎn)相同的節(jié)點(diǎn)歸為一組,例如將CPU多的節(jié)點(diǎn)分為一 組,將內(nèi)存大的節(jié)點(diǎn)分為一組,從而使異構(gòu)集群的各個節(jié)點(diǎn)形成具有不同特征的節(jié)點(diǎn)組。
查詢模塊220,查詢專門用于存儲作業(yè)應(yīng)用類型和運(yùn)行特點(diǎn)的數(shù)據(jù)庫,看是否存儲 有當(dāng)前提交的作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn)。 提交模塊230,用于根據(jù)查詢模塊查詢出的當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)將當(dāng)前提 交的作業(yè)提交到相應(yīng)特征的節(jié)點(diǎn)組上去運(yùn)行, 記錄模塊240,記錄每次作業(yè)的運(yùn)行數(shù)據(jù),因此當(dāng)前提交的作業(yè)如果在后續(xù)再次提 交運(yùn)行,記錄模塊240會記錄下該作業(yè)的兩次的運(yùn)行數(shù)據(jù)。 分析模塊250,用于分析記錄模塊240記錄的運(yùn)行數(shù)據(jù),每次作業(yè)提交運(yùn)行完畢, 記錄模塊240記錄下運(yùn)行數(shù)據(jù)之后,分析模塊250都會進(jìn)行分析該作業(yè)的運(yùn)行特點(diǎn),在分 析的時候,對于提交運(yùn)行過多次的作業(yè),分析模塊250是將最新的運(yùn)行數(shù)據(jù)和該作業(yè)的之 前歷次的運(yùn)行數(shù)據(jù)累加之后進(jìn)行分析,最后將最新分析得出的該作業(yè)的運(yùn)行特點(diǎn)替換掉數(shù) 據(jù)庫中該作業(yè)原來存儲的運(yùn)行特點(diǎn)。這樣,數(shù)據(jù)庫中存儲的該作業(yè)的運(yùn)行特點(diǎn)是動態(tài)變化 的,結(jié)果是趨于更準(zhǔn)確的。因此,即使查詢模塊220查詢數(shù)據(jù)庫中沒有當(dāng)前提交的作業(yè)的 運(yùn)行特點(diǎn),該作業(yè)被提交模塊230默認(rèn)提交到異構(gòu)集群的某節(jié)點(diǎn)組上去運(yùn)行,記錄模塊240 記錄下該作業(yè)的運(yùn)行數(shù)據(jù)之后,分析模塊250就可以分析得出該作業(yè)的運(yùn)行特點(diǎn),并將該 作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn)存儲到數(shù)據(jù)庫中,當(dāng)前提交的作業(yè)在這次運(yùn)行之后再次需要提 交時,查詢模塊220就可以查詢到該作業(yè)的運(yùn)行特點(diǎn),如果該作業(yè)多次提交運(yùn)行,記錄模塊 240記錄下多次運(yùn)行數(shù)據(jù),分析模塊250據(jù)此分析得出的運(yùn)行特點(diǎn)將趨于準(zhǔn)確。
其中,記錄模塊240記錄的運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、進(jìn)程數(shù)、使用的節(jié)點(diǎn)數(shù)、使 用的各節(jié)點(diǎn)內(nèi)存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行時間和CPU占用時間。數(shù) 據(jù)庫中存儲的運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU密集型。內(nèi)存密集型是指內(nèi)存使用量與使用 的各節(jié)點(diǎn)內(nèi)存之和的比值大于90%并且內(nèi)存使用量與進(jìn)程數(shù)的比值大于1G ;CPU密集型是 指CPU占用時間與運(yùn)行時間的比值大于90%。內(nèi)存使用量是指該類型作業(yè)的所有的進(jìn)程用 到的內(nèi)存之和。 借助本發(fā)明上述至少一個技術(shù)方案,通過將異構(gòu)集群的各個節(jié)點(diǎn)根據(jù)硬件信息分 成具有不同特征的節(jié)點(diǎn)組,調(diào)度服務(wù)器根據(jù)當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè) 提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行。這樣充分考慮了作業(yè)和異構(gòu)集群自身的特點(diǎn),由適合運(yùn) 行該作業(yè)的節(jié)點(diǎn)組來運(yùn)行, 一方面提高了作業(yè)運(yùn)行的效率,對于包含許多作業(yè)的高性能軟 件來說,提高了高性能軟件的效率,同時也提高了異構(gòu)集群的使用效率。而作業(yè)調(diào)度中間件 記錄作業(yè)的每次運(yùn)行數(shù)據(jù),并且在該作業(yè)每次運(yùn)行完畢之后將該作業(yè)的運(yùn)行數(shù)據(jù)與該作業(yè) 的歷史運(yùn)行數(shù)據(jù)累加,重新分析該作業(yè)的運(yùn)行特點(diǎn),從而不斷校正,提高作業(yè)和運(yùn)行節(jié)點(diǎn)組
7匹配的準(zhǔn)確度。 以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度方法,其特征在于,包括以下步驟作業(yè)調(diào)度服務(wù)器收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,并根據(jù)所述各個節(jié)點(diǎn)的硬件信息將所述各個節(jié)點(diǎn)分成具有不同特征的節(jié)點(diǎn)組;作業(yè)調(diào)度中間件查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn);如果有,所述作業(yè)調(diào)度服務(wù)器根據(jù)所述運(yùn)行特點(diǎn)將所述當(dāng)前提交的作業(yè)提交到相應(yīng)特征的所述節(jié)點(diǎn)組去運(yùn)行;如果沒有,所述作業(yè)調(diào)度服務(wù)器將所述當(dāng)前提交的作業(yè)提交到任意節(jié)點(diǎn)組去運(yùn)行,所述作業(yè)調(diào)度中間件記錄所述當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并根據(jù)所述運(yùn)行數(shù)據(jù)分析所述運(yùn)行特點(diǎn),所述作業(yè)調(diào)度中間件將所述當(dāng)前提交的作業(yè)的應(yīng)用類型和所述運(yùn)行特點(diǎn)存儲到所述數(shù)據(jù)庫中。
2. 根據(jù)權(quán)利要求1所述的調(diào)度方法,其特征在于,在所述作業(yè)調(diào)度服務(wù)器根據(jù)所述運(yùn) 行特點(diǎn)將所述當(dāng)前提交的作業(yè)提交到相應(yīng)特征的所述節(jié)點(diǎn)組去運(yùn)行之后,所述作業(yè)調(diào)度中 間件記錄所述當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并將所述運(yùn)行數(shù)據(jù)與所述當(dāng)前提交的作業(yè)的歷 史運(yùn)行數(shù)據(jù)累加之后重新分析所述運(yùn)行特點(diǎn),然后更新所述數(shù)據(jù)庫中存儲的所述當(dāng)前提交 的作業(yè)的所述運(yùn)行特點(diǎn)。
3. 根據(jù)權(quán)利要求1或2所述的調(diào)度方法,其特征在于,所述運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、 進(jìn)程數(shù)、使用的節(jié)點(diǎn)數(shù)、使用的各節(jié)點(diǎn)內(nèi)存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行 時間和CPU占用時間。
4. 根據(jù)權(quán)利要求3所述的調(diào)度方法,其特征在于,所述運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU 密集型。
5. 根據(jù)權(quán)利要求4所述的調(diào)度方法,其特征在于,所述內(nèi)存密集型是指所述內(nèi)存使用 量與所述使用的各節(jié)點(diǎn)內(nèi)存之和的比值大于90%并且所述內(nèi)存使用量與所述進(jìn)程數(shù)的比 值大于1G ;所述CPU密集型是指所述CPU占用時間與所述運(yùn)行時間的比值大于90%。
6. 根據(jù)權(quán)利要求4或5所述的調(diào)度方法,其特征在于,所述具有不同特征的節(jié)點(diǎn)組包 括內(nèi)存大的節(jié)點(diǎn)組和CPU多的節(jié)點(diǎn)組;如果所述當(dāng)前提交的作業(yè)的所述運(yùn)行特點(diǎn)為所述內(nèi) 存密集型,所述作業(yè)調(diào)度服務(wù)器就將所述當(dāng)前提交的作業(yè)提交到所述內(nèi)存大的節(jié)點(diǎn)組去運(yùn) 行;如果所述當(dāng)前提交的作業(yè)的所述運(yùn)行特點(diǎn)為所述CPU密集型,所述作業(yè)調(diào)度服務(wù)器就 將所述當(dāng)前提交的作業(yè)提交到所述CPU多的節(jié)點(diǎn)組去運(yùn)行。
7. —種基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度系統(tǒng),其特征在于,包括 分組模塊,用于收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息,并根據(jù)所述各個節(jié)點(diǎn)的硬件信息將所述各個節(jié)點(diǎn)進(jìn)行分成具有不同特征的節(jié)點(diǎn)組;查詢模塊,用于查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn); 提交模塊,用于根據(jù)所述運(yùn)行特點(diǎn)將所述當(dāng)前提交的作業(yè)提交到相應(yīng)特征的所述節(jié)點(diǎn)組上去運(yùn)行;記錄模塊,用于記錄所述當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù);分析模塊,用于分析所述運(yùn)行數(shù)據(jù)得出所述運(yùn)行特點(diǎn),并更新所述數(shù)據(jù)庫中所述當(dāng)前 提交的作業(yè)的所述運(yùn)行特點(diǎn)。
8. 根據(jù)權(quán)利要求7所述的調(diào)度系統(tǒng),其特征在于,所述運(yùn)行數(shù)據(jù)包括內(nèi)存使用量、進(jìn)程 數(shù)、使用的節(jié)點(diǎn)數(shù)、使用的各節(jié)點(diǎn)內(nèi)存、內(nèi)存占用率閾值、單進(jìn)程內(nèi)存占用量閾值、運(yùn)行時間 和CPU占用時間。
9. 根據(jù)權(quán)利要求8所述的調(diào)度系統(tǒng),其特征在于,所述運(yùn)行特點(diǎn)包括內(nèi)存密集型和CPU 密集型,所述內(nèi)存密集型是指所述內(nèi)存使用量與所述使用的各節(jié)點(diǎn)內(nèi)存之和的比值大于 90%并且所述內(nèi)存使用量與所述進(jìn)程數(shù)的比值大于IG,所述CPU密集型是指所述CPU占用 時間與所述運(yùn)行時間的比值大于90%。
10. 根據(jù)權(quán)利要求7至9之一所述的調(diào)度系統(tǒng),其特征在于,所述分析模塊是將所述當(dāng) 前提交的作業(yè)的所述運(yùn)行數(shù)據(jù)與所述當(dāng)前提交的作業(yè)的歷史運(yùn)行數(shù)據(jù)累加之后重新分析 所述運(yùn)行特點(diǎn)。
全文摘要
本發(fā)明提供一種基于應(yīng)用特征的異構(gòu)集群作業(yè)自適應(yīng)調(diào)度方法和系統(tǒng)。其中,調(diào)度方法包括以下步驟作業(yè)調(diào)度服務(wù)器收集異構(gòu)集群的各個節(jié)點(diǎn)的硬件信息并根據(jù)各個節(jié)點(diǎn)的硬件信息將各個節(jié)點(diǎn)分成具有不同特征的節(jié)點(diǎn)組;作業(yè)調(diào)度中間件查詢數(shù)據(jù)庫中是否存儲有當(dāng)前提交的作業(yè)的運(yùn)行特點(diǎn);如果有,作業(yè)調(diào)度服務(wù)器根據(jù)運(yùn)行特點(diǎn)將當(dāng)前提交的作業(yè)提交到相應(yīng)特征的節(jié)點(diǎn)組去運(yùn)行;如果沒有,作業(yè)調(diào)度服務(wù)器將當(dāng)前提交的作業(yè)提交到任意節(jié)點(diǎn)組去運(yùn)行,作業(yè)調(diào)度中間件記錄當(dāng)前提交的作業(yè)的運(yùn)行數(shù)據(jù)并根據(jù)運(yùn)行數(shù)據(jù)分析運(yùn)行特點(diǎn),將當(dāng)前提交的作業(yè)的應(yīng)用類型和運(yùn)行特點(diǎn)存儲到數(shù)據(jù)庫中。本發(fā)明的方法和系統(tǒng)可以提高高性能軟件的效率,提高異構(gòu)集群的使用效率。
文檔編號G06F9/46GK101739292SQ20091024209
公開日2010年6月16日 申請日期2009年12月4日 優(yōu)先權(quán)日2009年12月4日
發(fā)明者張海闊, 張濤, 李偉偉, 李媛, 溫鑫, 邵宗有 申請人:曙光信息產(chǎn)業(yè)(北京)有限公司