本發(fā)明涉及資源管理
技術(shù)領(lǐng)域:
,尤其涉及一種資源調(diào)度方法及裝置。
背景技術(shù):
:隨著互聯(lián)網(wǎng)的快速發(fā)展和大數(shù)據(jù)時(shí)代的來臨,基于數(shù)據(jù)密集型應(yīng)用的計(jì)算框架不斷涌現(xiàn),不同的計(jì)算框架面向不同領(lǐng)域的應(yīng)用?;谶@一特點(diǎn),一些公司(例如,互聯(lián)網(wǎng)公司)往往需要部署和運(yùn)行多個(gè)計(jì)算框架,從而為每個(gè)應(yīng)用選擇最優(yōu)的計(jì)算框架。因此,集群資源統(tǒng)一管理和調(diào)度系統(tǒng)作為集群資源共享平臺被提出來,該系統(tǒng)中包括集群,集群包括資源管理器和多個(gè)節(jié)點(diǎn),集群資源即多個(gè)節(jié)點(diǎn)的資源,資源管理器部署在集群中的節(jié)點(diǎn)上,該系統(tǒng)需要同時(shí)支持多種不同的計(jì)算框架,如圖1所示的系統(tǒng),該系統(tǒng)支持mr(即mapreduce)、storm、s4(simplescalablestreamingsystem)以及mpi(messagepassinginterface)等計(jì)算框架,資源管理器通過對客戶端設(shè)備發(fā)送的不同計(jì)算框架類型的應(yīng)用程序進(jìn)行統(tǒng)一的調(diào)度,以便提高資源利用率,降低運(yùn)維成本。目前,集群資源統(tǒng)一管理和調(diào)度系統(tǒng)經(jīng)常采用的資源調(diào)度策略包括公平調(diào)度策略、容量調(diào)度策略和先進(jìn)先出調(diào)度策略,公平調(diào)度策略即按照客戶端設(shè)備提交的應(yīng)用程序所需要使用的內(nèi)存資源、中央處理器(centralprocessingunit,簡稱cpu)資源或磁盤i/o資源等資源的比率大小進(jìn)行資源調(diào)度;容量調(diào)度策略即以應(yīng)用程序?yàn)閱挝粍澐仲Y源,每個(gè)應(yīng)用程序可設(shè)定資源最低保證和使用上限,按照設(shè)定的資源最低保證和使用上限為應(yīng)用程序調(diào)度資源;先進(jìn)先出調(diào)度策略即按照客戶端設(shè)備提交的應(yīng)用程序的先后順序調(diào)度。由于應(yīng)用程序向資源管理器請求的資源量并不是應(yīng)用程序?qū)嶋H需要的資源量,而是盡量請求較多的資源,使得集群資源統(tǒng)一管理和調(diào)度系統(tǒng)不能根據(jù)應(yīng)用程序的實(shí)際運(yùn)行情況為每個(gè)應(yīng)用程序分配資源,從而使得資源分配不合理,資源利用率有待提高。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的實(shí)施例提供一種資源調(diào)度方法及裝置,用以提高集群資源的利用率。為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:第一方面,提供一種資源調(diào)度方法,應(yīng)用于資源管理器,資源管理器用于管理和調(diào)度集群資源,集群包括多個(gè)節(jié)點(diǎn),與集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在多個(gè)節(jié)點(diǎn)上,r為正整數(shù),該方法包括:資源管理器接收r個(gè)應(yīng)用程序的資源請求;資源管理器獲取歷史特征信息,歷史特征信息包括第一歷史特征信息和第二歷史特征信息中的至少一項(xiàng),第一歷史特征信息為r個(gè)應(yīng)用程序中的n個(gè)應(yīng)用程序的歷史特征,應(yīng)用程序的歷史特征包括用于表示該應(yīng)用程序的歷史資源使用情況的信息和用于表示該應(yīng)用程序的歷史運(yùn)行時(shí)間的信息中的至少一項(xiàng);第二歷史特征信息為多個(gè)節(jié)點(diǎn)中的有空閑資源的m個(gè)節(jié)點(diǎn)的歷史特征,節(jié)點(diǎn)的歷史特征包括該節(jié)點(diǎn)的故障率以及任務(wù)失敗率中的至少一項(xiàng),1≤n≤r,m≥1,n、m均為整數(shù);資源管理器根據(jù)第一歷史特征信息和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源;或者,資源管理器根據(jù)第二歷史特征信息和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。本發(fā)明實(shí)施例提供的方法,在接收到多個(gè)應(yīng)用程序發(fā)送的資源請求后,獲取節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征,并根據(jù)節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征為應(yīng)用程序分配資源,由于節(jié)點(diǎn)的歷史特征可以間接的表征節(jié)點(diǎn)當(dāng)前或未來的特征,應(yīng)用程序的歷史特征可以間接的表征應(yīng)用程序的當(dāng)前運(yùn)行或未來運(yùn)行時(shí)的特征,在本發(fā)明實(shí)施例中,并不根據(jù)應(yīng)用程序的資源請求中請求的資源量為應(yīng)用程序分配資源,而是通過節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征為應(yīng)用程序分配資源,這樣可以防止資源管理器根據(jù)應(yīng)用程序請求的資源量為應(yīng)用程序分配資源所造成的資源浪費(fèi),使得資源調(diào)度更合理。結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,該方法還包括:資源管理器根據(jù)第一歷史特征信息調(diào)整第一調(diào)度參數(shù),第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè) 應(yīng)用程序調(diào)度資源的順序;資源管理器根據(jù)第一歷史特征信息和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源,包括:資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第一方面,在第二種可能的實(shí)現(xiàn)方式中,該方法還包括:資源管理器根據(jù)第一歷史特征信息和第二歷史特征信息調(diào)整第一調(diào)度參數(shù),第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù)和m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè)應(yīng)用程序調(diào)度資源的順序和調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;資源管理器根據(jù)第一歷史特征信息和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源,包括:資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第一方面,在第三種可能的實(shí)現(xiàn)方式中,該方法還包括:資源管理器根據(jù)第二歷史特征信息調(diào)整第二調(diào)度參數(shù),第二調(diào)度參數(shù)包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第二調(diào)度參數(shù)用于確定調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;資源管理器根據(jù)第二歷史特征信息和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源,包括:資源管理器根據(jù)調(diào)整后的第二調(diào)度參數(shù)和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;m個(gè)節(jié)點(diǎn)的歷史特征包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率,資源管理器根據(jù)第一歷史特征信息和第二歷史特征信息調(diào)整第一調(diào)度參數(shù),包括:資源管理器確定n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;資源管理器根據(jù)m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率計(jì)算m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率,一個(gè)節(jié)點(diǎn)的健康率等于該節(jié)點(diǎn)的故障率的α倍與該節(jié)點(diǎn)的任務(wù)失敗率的β倍之和,α=1-β,0<α<1;資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源,包括:資源管理器將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。由于節(jié)點(diǎn)的健康率越高時(shí),節(jié)點(diǎn)的穩(wěn)定性也越高,該種實(shí)現(xiàn)方式中, 由于將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給了綜合歷史運(yùn)行時(shí)長越長的節(jié)點(diǎn),能夠提高長時(shí)應(yīng)用程序的運(yùn)行穩(wěn)定性。結(jié)合第一方面的第四種可能的實(shí)現(xiàn)方式,在第五種可能的實(shí)現(xiàn)方式中,該方法還包括:資源管理器多次計(jì)算多個(gè)節(jié)點(diǎn)中的全部節(jié)點(diǎn)的任務(wù)成功率,并在每次計(jì)算完成后根據(jù)任務(wù)成功率調(diào)整α的值,直至確定出的α的值使得任務(wù)成功率最高為止。該種實(shí)現(xiàn)方式中,能夠確定最優(yōu)的α的值,從而使得系統(tǒng)的任務(wù)成功率最高。結(jié)合第一方面的第一種可能的實(shí)現(xiàn)方式,在第六種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量,資源管理器根據(jù)第一歷史特征信息調(diào)整第一調(diào)度參數(shù),包括:當(dāng)該應(yīng)用程序的綜合歷史資源利用率小于預(yù)設(shè)閾值時(shí),資源管理器采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,第一閾值大于該應(yīng)用程序的綜合歷史資源使用量;資源管理器將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值,第一閾值小于第二閾值;資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為該應(yīng)用程序調(diào)度資源,包括:資源管理器按照第一閾值為該應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源量是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源量再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為第二閾值為止。該種實(shí)現(xiàn)方式中,根據(jù)應(yīng)用程序的綜合歷史資源使用情況確定第一閾值和第二閾值,先按照第一閾值為應(yīng)用程序調(diào)度資源,再根據(jù)應(yīng)用程序?qū)嶋H使用的資源量調(diào)整為該應(yīng)用程序分配的資源量,從而避免了資源浪費(fèi),提高了資源利用率。結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式至第六種可能的實(shí)現(xiàn)方式中的任一種,在第七種可能的實(shí)現(xiàn)方式中,一個(gè)應(yīng)用程序的歷史特征還包括該應(yīng)用程序的歷史優(yōu)先級和該應(yīng)用程序的歷史標(biāo)簽中的至少一 項(xiàng),一個(gè)節(jié)點(diǎn)的歷史特征還包括該節(jié)點(diǎn)的歷史資源占用率和該節(jié)點(diǎn)的歷史資源使用量中的至少一項(xiàng)。結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式至第三種可能的實(shí)現(xiàn)方式中的任一種,在第八種可能的實(shí)現(xiàn)方式中,該方法還包括:當(dāng)所述資源管理器未成功獲取所述歷史特征信息時(shí),所述資源管理器根據(jù)預(yù)設(shè)調(diào)度策略為所述r個(gè)應(yīng)用程序調(diào)度資源。第二方面,提供一種資源調(diào)度裝置,用于管理和調(diào)度集群資源,集群包括多個(gè)節(jié)點(diǎn),與集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在多個(gè)節(jié)點(diǎn)上,r為正整數(shù),該裝置包括:接收單元,用于接收r個(gè)應(yīng)用程序的資源請求;獲取單元,用于獲取歷史特征信息,歷史特征信息包括第一歷史特征信息和第二歷史特征信息中的至少一項(xiàng),第一歷史特征信息為r個(gè)應(yīng)用程序中的n個(gè)應(yīng)用程序的歷史特征,應(yīng)用程序的歷史特征包括用于表示該應(yīng)用程序的歷史資源使用情況的信息和用于表示該應(yīng)用程序的歷史運(yùn)行時(shí)間的信息中的至少一項(xiàng);第二歷史特征信息為多個(gè)節(jié)點(diǎn)中的有空閑資源的m個(gè)節(jié)點(diǎn)的歷史特征,節(jié)點(diǎn)的歷史特征包括該節(jié)點(diǎn)的故障率以及任務(wù)失敗率中的至少一項(xiàng),1≤n≤r,m≥1,n、m均為整數(shù);調(diào)度單元,用于根據(jù)第一歷史特征信息和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源;或者,根據(jù)第二歷史特征信息和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。由于資源調(diào)度裝置中的各個(gè)單元用于執(zhí)行上述方法,資源調(diào)度裝置的有益效果可參見方法部分所述的有益效果。結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,該裝置還包括:調(diào)整單元,用于根據(jù)第一歷史特征信息調(diào)整第一調(diào)度參數(shù),第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè)應(yīng)用程序調(diào)度資源的順序;調(diào)度單元,具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第二方面,在第二種可能的實(shí)現(xiàn)方式中,該裝置還包括:調(diào)整單元,用于根據(jù)第一歷史特征信息和第二歷史特征信息調(diào)整第一調(diào)度參數(shù),其中,第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù) 和m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè)應(yīng)用程序調(diào)度資源的順序和調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;調(diào)度單元,具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第二方面,在第三種可能的實(shí)現(xiàn)方式中,該裝置還包括:調(diào)整單元,用于根據(jù)第二歷史特征信息調(diào)整第二調(diào)度參數(shù),第二調(diào)度參數(shù)包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第二調(diào)度參數(shù)用于確定調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;調(diào)度單元,具體用于:根據(jù)調(diào)整后的第二調(diào)度參數(shù)和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;m個(gè)節(jié)點(diǎn)的歷史特征包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率;調(diào)整單元,具體用于:確定n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;根據(jù)m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率計(jì)算m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率,一個(gè)節(jié)點(diǎn)的健康率等于該節(jié)點(diǎn)的故障率的α倍與該節(jié)點(diǎn)的任務(wù)失敗率的β倍之和,α=1-β,0<α<1;調(diào)度單元,具體用于:將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。由于節(jié)點(diǎn)的健康率越高時(shí),節(jié)點(diǎn)的穩(wěn)定性也越高,該種實(shí)現(xiàn)方式中,由于將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給了綜合歷史運(yùn)行時(shí)長越長的節(jié)點(diǎn),能夠提高長時(shí)應(yīng)用程序的運(yùn)行穩(wěn)定性。結(jié)合第二方面的第四種可能的實(shí)現(xiàn)方式,在第五種可能的實(shí)現(xiàn)方式中,該裝置還包括:計(jì)算單元,用于多次計(jì)算多個(gè)節(jié)點(diǎn)中的全部節(jié)點(diǎn)的任務(wù)成功率,并在每次計(jì)算完成后根據(jù)任務(wù)成功率調(diào)整α的值,直至確定出的α的值使得任務(wù)成功率最高為止。該種實(shí)現(xiàn)方式中,能夠確定最優(yōu)的α的值,從而使得系統(tǒng)的任務(wù)成功率最高。結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式,在第六種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量;調(diào)整單元, 具體用于:當(dāng)該應(yīng)用程序的綜合歷史資源利用率小于預(yù)設(shè)閾值時(shí),采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,第一閾值大于該應(yīng)用程序的綜合歷史資源使用量;將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值,第一閾值小于第二閾值;調(diào)度單元,具體用于:按照第一閾值為該應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源量是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源量再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為第二閾值為止。該種實(shí)現(xiàn)方式中,根據(jù)應(yīng)用程序的綜合歷史資源使用情況確定第一閾值和第二閾值,先按照第一閾值為應(yīng)用程序調(diào)度資源,再根據(jù)應(yīng)用程序?qū)嶋H使用的資源量調(diào)整為該應(yīng)用程序分配的資源量,從而避免了資源浪費(fèi),提高了資源利用率。結(jié)合第二方面、第二方面的第一種可能的實(shí)現(xiàn)方式至第六種可能的實(shí)現(xiàn)方式中的任一種,在第七種可能的實(shí)現(xiàn)方式中,一個(gè)應(yīng)用程序的歷史特征還包括該應(yīng)用程序的歷史優(yōu)先級和該應(yīng)用程序的歷史標(biāo)簽中的至少一項(xiàng),一個(gè)節(jié)點(diǎn)的歷史特征還包括該節(jié)點(diǎn)的歷史資源占用率和該節(jié)點(diǎn)的歷史資源使用量中的至少一項(xiàng)。結(jié)合第二方面、第二方面的第一種可能的實(shí)現(xiàn)方式至第三種可能的實(shí)現(xiàn)方式中的任一種,在第八種可能的實(shí)現(xiàn)方式中,所述調(diào)度單元還用于:當(dāng)所述獲取單元未成功獲取所述歷史特征信息時(shí),根據(jù)預(yù)設(shè)調(diào)度策略為所述r個(gè)應(yīng)用程序調(diào)度資源。第三方面,提供一種資源調(diào)度裝置,用于管理和調(diào)度集群資源,集群包括多個(gè)節(jié)點(diǎn),與集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在多個(gè)節(jié)點(diǎn)上,r為正整數(shù),該裝置包括:接收器、存儲器和處理器;接收器,用于接收r個(gè)應(yīng)用程序的資源請求;存儲器用于存儲一組代碼,處理器根據(jù)該組代碼執(zhí)行以下動(dòng)作:獲取歷史特征信息,歷史特征信息包括第一歷史特征信息和第二歷史特征信息中的至少一項(xiàng),第一歷史特征信息為r個(gè)應(yīng) 用程序中的n個(gè)應(yīng)用程序的歷史特征,應(yīng)用程序的歷史特征包括用于表示該應(yīng)用程序的歷史資源使用情況的信息和用于表示該應(yīng)用程序的歷史運(yùn)行時(shí)間的信息中的至少一項(xiàng);第二歷史特征信息為多個(gè)節(jié)點(diǎn)中的有空閑資源的m個(gè)節(jié)點(diǎn)的歷史特征,節(jié)點(diǎn)的歷史特征包括該節(jié)點(diǎn)的故障率以及任務(wù)失敗率中的至少一項(xiàng),1≤n≤r,m≥1,n、m均為整數(shù);根據(jù)第一歷史特征信息和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源;或者,根據(jù)第二歷史特征信息和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。由于資源調(diào)度裝置中的各個(gè)器件用于執(zhí)行上述方法,資源調(diào)度裝置的有益效果可參見方法部分所述的有益效果。結(jié)合第三方面,在第一種可能的實(shí)現(xiàn)方式中,處理器還用于:根據(jù)第一歷史特征信息調(diào)整第一調(diào)度參數(shù),第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè)應(yīng)用程序調(diào)度資源的順序;處理器具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第三方面,在第二種可能的實(shí)現(xiàn)方式中,處理器還用于:根據(jù)第一歷史特征信息和第二歷史特征信息調(diào)整第一調(diào)度參數(shù),其中,第一調(diào)度參數(shù)包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù)和m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第一調(diào)度參數(shù)用于確定為n個(gè)應(yīng)用程序調(diào)度資源的順序和調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;處理器具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第三方面,在第三種可能的實(shí)現(xiàn)方式中,處理器還用于:根據(jù)第二歷史特征信息調(diào)整第二調(diào)度參數(shù),第二調(diào)度參數(shù)包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),第二調(diào)度參數(shù)用于確定調(diào)度m個(gè)節(jié)點(diǎn)的資源的順序;處理器具體用于:根據(jù)調(diào)整后的第二調(diào)度參數(shù)和第二調(diào)度策略為r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。結(jié)合第三方面的第二種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;m個(gè)節(jié)點(diǎn)的歷史特征包括m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障 率和任務(wù)失敗率;處理器具體用于:確定n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;根據(jù)m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率計(jì)算m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率,一個(gè)節(jié)點(diǎn)的健康率等于該節(jié)點(diǎn)的故障率的α倍與該節(jié)點(diǎn)的任務(wù)失敗率的β倍之和,α=1-β,0<α<1;處理器具體用于:將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。由于節(jié)點(diǎn)的健康率越高時(shí),節(jié)點(diǎn)的穩(wěn)定性也越高,該種實(shí)現(xiàn)方式中,由于將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給了綜合歷史運(yùn)行時(shí)長越長的節(jié)點(diǎn),能夠提高長時(shí)應(yīng)用程序的運(yùn)行穩(wěn)定性。結(jié)合第三方面的第四種可能的實(shí)現(xiàn)方式,在第五種可能的實(shí)現(xiàn)方式中,處理器具還用于:多次計(jì)算多個(gè)節(jié)點(diǎn)中的全部節(jié)點(diǎn)的任務(wù)成功率,并在每次計(jì)算完成后根據(jù)任務(wù)成功率調(diào)整α的值,直至確定出的α的值使得任務(wù)成功率最高為止。該種實(shí)現(xiàn)方式中,能夠確定最優(yōu)的α的值,從而使得系統(tǒng)的任務(wù)成功率最高。結(jié)合第三方面的第一種可能的實(shí)現(xiàn)方式,在第六種可能的實(shí)現(xiàn)方式中,n個(gè)應(yīng)用程序的歷史特征包括n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量;處理器具體用于:當(dāng)該應(yīng)用程序的綜合歷史資源利用率小于預(yù)設(shè)閾值時(shí),采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,第一閾值大于該應(yīng)用程序的綜合歷史資源使用量;將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值,第一閾值小于第二閾值;處理器具體用于:按照第一閾值為該應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源量是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源量再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為第二閾值為止。該種實(shí)現(xiàn)方式中,根據(jù)應(yīng)用程序的綜合歷史資源使用情況確定第一閾值和第二閾值,先按照第一閾值為應(yīng)用程序調(diào)度資源,再根據(jù)應(yīng)用程序?qū)? 際使用的資源量調(diào)整為該應(yīng)用程序分配的資源量,從而避免了資源浪費(fèi),提高了資源利用率。結(jié)合第三方面、第三方面的第一種可能的實(shí)現(xiàn)方式至第六種可能的實(shí)現(xiàn)方式中的任一種,在第七種可能的實(shí)現(xiàn)方式中,一個(gè)應(yīng)用程序的歷史特征還包括該應(yīng)用程序的歷史優(yōu)先級和該應(yīng)用程序的歷史標(biāo)簽中的至少一項(xiàng),一個(gè)節(jié)點(diǎn)的歷史特征還包括該節(jié)點(diǎn)的歷史資源占用率和該節(jié)點(diǎn)的歷史資源使用量中的至少一項(xiàng)。結(jié)合第三方面、第三方面的第一種可能的實(shí)現(xiàn)方式至第三種可能的實(shí)現(xiàn)方式中的任一種,在第八種可能的實(shí)現(xiàn)方式中,所述處理器還用于:當(dāng)所述處理器未成功獲取所述歷史特征信息時(shí),所述資源管理器根據(jù)預(yù)設(shè)調(diào)度策略為所述r個(gè)應(yīng)用程序調(diào)度資源。附圖說明為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為現(xiàn)有技術(shù)中的一種集群資源統(tǒng)一管理和調(diào)度系統(tǒng)的組成示意圖;圖2為本發(fā)明實(shí)施例提供的一種集群資源統(tǒng)一管理和調(diào)度系統(tǒng)的架構(gòu)示意圖;圖3為本發(fā)明實(shí)施例提供的一種資源調(diào)度方法的流程圖;圖4為本發(fā)明實(shí)施例提供的又一種資源調(diào)度方法的流程圖;圖5為本發(fā)明實(shí)施例提供的又一種資源調(diào)度方法的流程圖;圖6為本發(fā)明實(shí)施例提供的一種資源調(diào)度裝置的組成示意圖;圖7為本發(fā)明實(shí)施例提供的又一種資源調(diào)度裝置的組成示意圖;圖8為本發(fā)明實(shí)施例提供的又一種資源調(diào)度裝置的組成示意圖。具體實(shí)施方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。如圖2所示,為集群資源統(tǒng)一管理和調(diào)度系統(tǒng)的架構(gòu)示意圖,包括集群和客戶端設(shè)備,集群包括資源管理器和多個(gè)節(jié)點(diǎn)(圖2中以三個(gè)節(jié)點(diǎn)為例進(jìn)行繪制),資源管理器部署在集群中的某個(gè)節(jié)點(diǎn)上,每個(gè)節(jié)點(diǎn)均可以與資源管理器通信,客戶端設(shè)備向資源管理器提交應(yīng)用程序的資源請求,資源管理器可以將節(jié)點(diǎn)的資源分配給應(yīng)用程序,以使得應(yīng)用程序根據(jù)分配的節(jié)點(diǎn)資源在該節(jié)點(diǎn)上運(yùn)行。本發(fā)明實(shí)施例中的節(jié)點(diǎn)既具備計(jì)算功能也具備存儲功能。本發(fā)明實(shí)施例提供一種資源調(diào)度方法,應(yīng)用于資源管理器,所述資源管理器用于管理和調(diào)度集群資源,所述集群包括多個(gè)節(jié)點(diǎn),與所述集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在所述多個(gè)節(jié)點(diǎn)上,r為正整數(shù),如圖3所示,所述方法包括:301、所述資源管理器接收所述r個(gè)應(yīng)用程序的資源請求。資源管理器部署在上述多個(gè)節(jié)點(diǎn)中的任意一個(gè)節(jié)點(diǎn)上,集群資源即上述多個(gè)節(jié)點(diǎn)的資源,資源管理器屬于集群資源統(tǒng)一管理和調(diào)度系統(tǒng)(以下簡稱系統(tǒng)),該系統(tǒng)可以為yarn、mesos、coraca、torca或omega等。其中,集群支持至少一種計(jì)算框架,與任意一種計(jì)算框架適配的應(yīng)用程序可以運(yùn)行在節(jié)點(diǎn)上。資源管理器接收到的多個(gè)應(yīng)用程序的資源請求可以為多個(gè)客戶端設(shè)備提交的應(yīng)用程序的資源請求,一個(gè)應(yīng)用程序?yàn)橐粋€(gè)屬于某種計(jì)算框架類型的任務(wù),運(yùn)行一次該應(yīng)用程序即運(yùn)行一次該任務(wù)。具體的,資源管理器接收到的多個(gè)應(yīng)用程序的資源請求可以為一個(gè)心跳周期內(nèi)接收到的全部應(yīng)用程序的資源請求,資源管理器一次處理一個(gè)心跳周期內(nèi)接收到的應(yīng)用程序的資源請求,心跳周期可以為預(yù)設(shè)值。302、所述資源管理器獲取歷史特征信息,所述歷史特征信息包括第一歷史特征信息和第二歷史特征信息中的至少一項(xiàng)。其中,所述第一歷史特征信息為所述r個(gè)應(yīng)用程序中的n個(gè)應(yīng)用程序的歷史特征;所述第二歷史特征信息為所述多個(gè)節(jié)點(diǎn)中的m個(gè)節(jié)點(diǎn)的歷史特征;所述m個(gè)節(jié)點(diǎn)為所述多個(gè)節(jié)點(diǎn)中的有空閑資源的m個(gè)節(jié)點(diǎn),應(yīng)用程序的歷史特征包括用于表示該應(yīng)用程序的歷史資源使用情況的信息和用于表示該應(yīng)用程序的歷史運(yùn)行時(shí)間的信息中的至少一項(xiàng),節(jié)點(diǎn)的歷史特征包括該節(jié)點(diǎn)的故障率以及任務(wù)失敗率中的至少一項(xiàng),1≤n≤r,m≥1,n、m均為整數(shù)。需要說明的是,在本發(fā)明實(shí)施例中,客戶端設(shè)備在提交一個(gè)應(yīng)用程序時(shí),可以為該應(yīng)用程序攜帶一個(gè)唯一的標(biāo)識,用于資源管理器區(qū)分不同的應(yīng)用程序。一個(gè)應(yīng)用程序可能只運(yùn)行一次,也可能運(yùn)行多次,對于多次運(yùn)行的應(yīng)用程序,若該應(yīng)用程序已經(jīng)運(yùn)行了i(i≥1,i為整數(shù))次,則該應(yīng)用程序的歷史特征可以根據(jù)這i次歷史運(yùn)行過程獲取,并存儲在數(shù)據(jù)庫中。示例性的,假設(shè)應(yīng)用程序1(即標(biāo)識為1的應(yīng)用程序)為在2015年10月1日首次運(yùn)行的應(yīng)用程序,并且該應(yīng)用程序每個(gè)月運(yùn)行一次;應(yīng)用程序2(即標(biāo)識為2的應(yīng)用程序)為在2015年11月10日首次運(yùn)行的應(yīng)用程序,并且該應(yīng)用程序每個(gè)星期運(yùn)行一次;應(yīng)用程序3(即標(biāo)識為3的應(yīng)用程序)為在2015年11月20日首次運(yùn)行的應(yīng)用程序,并且該應(yīng)用程序每天運(yùn)行一次;應(yīng)用程序4(即標(biāo)識為4的應(yīng)用程序)為在2015年12月1日首次運(yùn)行的應(yīng)用程序、并且該應(yīng)用程序只運(yùn)行一次,若每月均按照30天計(jì)算,則2015年12月1日之前該4個(gè)應(yīng)用程序的歷史運(yùn)行次數(shù)如表1所示,其中,應(yīng)用程序1、應(yīng)用程序2或應(yīng)用程序3的歷史特征可以根據(jù)該應(yīng)用程序的至少一次歷史運(yùn)行過程獲取(例如,應(yīng)用程序1的歷史特征可以根據(jù)該應(yīng)用程序的2次歷史運(yùn)行過程獲取),應(yīng)用程序4沒有歷史特征。表1應(yīng)用程序標(biāo)識首次運(yùn)行時(shí)間運(yùn)行周期歷史運(yùn)行次數(shù)12015年10月1日1個(gè)月222015年11月10日1個(gè)星期332015年11月20日1天1142015年12月1日無0具體的,資源管理器接收到的多個(gè)應(yīng)用程序中可以包括只運(yùn)行一次的應(yīng)用程序和/或運(yùn)行多次的應(yīng)用程序,當(dāng)歷史特征信息為第一歷史特征信息時(shí),資源管理器在接收到多個(gè)應(yīng)用程序的資源請求時(shí),可以根據(jù)應(yīng)用程序的標(biāo)識在數(shù)據(jù)庫中查詢應(yīng)用程序的歷史特征,在一種應(yīng)用場景下(例如,只對預(yù)設(shè)的應(yīng)用程序查找歷史特征),資源管理器可以只在數(shù)據(jù)庫中查詢多個(gè)應(yīng)用程序中的部分應(yīng)用程序的歷史特征,該情況下,若數(shù)據(jù)庫中包含多個(gè)應(yīng)用程序中的n′個(gè)應(yīng)用程序的歷史特征,則n個(gè)應(yīng)用程序可以為n′個(gè)應(yīng)用程序中的部分或全部應(yīng)用程序;在另一種應(yīng)用場景下,資源管理器可以在數(shù)據(jù)庫中查詢多個(gè)應(yīng)用程序中的全部應(yīng)用程序的歷史特征,則n個(gè)應(yīng)用程序可以為n′個(gè)應(yīng)用程序中的全部的應(yīng)用程序,n′為大于或等于n的整數(shù)?;诒?所述的示例,若在2015年12月1日,在同一個(gè)心跳周期內(nèi)應(yīng)用程序1、應(yīng)用程序2、應(yīng)用程序3和應(yīng)用程序4向資源管理器請求資源,則資源管理器能夠在數(shù)據(jù)庫中查詢到應(yīng)用程序1、應(yīng)用程序2和應(yīng)用程序3的歷史特征。其中,m個(gè)節(jié)點(diǎn)可以為上述多個(gè)節(jié)點(diǎn)中的全部有空閑資源的節(jié)點(diǎn),也可以為上述多個(gè)節(jié)點(diǎn)中的全部有空閑資源的節(jié)點(diǎn)中的部分節(jié)點(diǎn)。具體的,應(yīng)用程序的歷史運(yùn)行時(shí)間的信息可以包括該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)的歷史運(yùn)行時(shí)長、歷史啟動(dòng)時(shí)間以及歷史停止時(shí)間,該應(yīng)用程序的綜合歷史運(yùn)行時(shí)長等;應(yīng)用程序的歷史資源使用情況的信息可以包括該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)的歷史資源請求量、歷史資源使用量以及歷史資源利用率,該應(yīng)用程序的綜合歷史資源請求量、綜合歷 史資源使用量以及綜合歷史資源利用率等。在本發(fā)明實(shí)施例中,“一個(gè)應(yīng)用程序的綜合歷史特征”是指根據(jù)該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)的該歷史特征綜合確定的歷史特征,例如,“一個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長”是指根據(jù)該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)的歷史運(yùn)行時(shí)長綜合確定的歷史運(yùn)行時(shí)長,具體的,該應(yīng)用程序的綜合歷史運(yùn)行時(shí)長可以為多次歷史運(yùn)行時(shí)長的平均值,也可以為多次歷史運(yùn)行時(shí)長中的最高值。其中,一個(gè)節(jié)點(diǎn)的故障率計(jì)算方法為:該節(jié)點(diǎn)的故障率=該節(jié)點(diǎn)故障次數(shù)÷集群中所有節(jié)點(diǎn)的總故障次數(shù);一個(gè)節(jié)點(diǎn)的任務(wù)失敗率計(jì)算方法為:該節(jié)點(diǎn)的任務(wù)失敗率=該節(jié)點(diǎn)運(yùn)行任務(wù)失敗的次數(shù)÷該節(jié)點(diǎn)運(yùn)行的總?cè)蝿?wù)次數(shù)。上述計(jì)算中涉及到的次數(shù)均為預(yù)設(shè)時(shí)間段內(nèi)的次數(shù),該預(yù)設(shè)時(shí)間段可以為半年,也可以為1年,本發(fā)明實(shí)施例對此不進(jìn)行限制。需要說明的是,在節(jié)點(diǎn)上運(yùn)行一次應(yīng)用程序即運(yùn)行一個(gè)任務(wù),若運(yùn)行成功,則該次任務(wù)成功,若運(yùn)行失敗,則該次任務(wù)失敗??蛇x的,一個(gè)應(yīng)用程序的歷史特征還包括該應(yīng)用程序的歷史優(yōu)先級以及該應(yīng)用程序的歷史標(biāo)簽中的至少一項(xiàng),一個(gè)節(jié)點(diǎn)的歷史特征還包括該節(jié)點(diǎn)的歷史資源占用率。具體的,應(yīng)用程序的歷史優(yōu)先級包括該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)的優(yōu)先級;應(yīng)用程序的歷史標(biāo)簽包括該應(yīng)用程序的一次或多次歷史運(yùn)行時(shí)攜帶的標(biāo)簽,該標(biāo)簽可以為應(yīng)用程序中包括的指示信息,例如,指示使用某個(gè)節(jié)點(diǎn)的資源的信息,該標(biāo)簽還可以為時(shí)間參數(shù),表示該應(yīng)用程序要求在該時(shí)間參數(shù)指示的時(shí)間點(diǎn)之前完成運(yùn)行,如時(shí)間參數(shù)21:10,即表示該應(yīng)用程序要求在21:10之前完成運(yùn)行即可。節(jié)點(diǎn)的歷史特征還可以包括該節(jié)點(diǎn)的歷史資源使用量和該節(jié)點(diǎn)的歷史資源占用率,具體的,節(jié)點(diǎn)的歷史資源使用量可以為一段時(shí)間內(nèi)的多個(gè)測試時(shí)間點(diǎn)測試得到的資源使用量的平均值或最高值,節(jié)點(diǎn)的歷史資源占用率可以根據(jù)該節(jié)點(diǎn)的歷史資源使用量以及該節(jié)點(diǎn)的資源總量計(jì)算得到。上述資源包括節(jié)點(diǎn)的cpu資源、內(nèi)存資源、磁盤空間資源、磁盤i/o資源、網(wǎng)絡(luò)i/o資源以及文件句柄數(shù)等資源。需要說明的是,節(jié)點(diǎn)會實(shí)時(shí)的向資源管理器上報(bào)該節(jié)點(diǎn)的資源使用信 息及任務(wù)運(yùn)行信息,以便資源管理器確定應(yīng)用程序的歷史特征,用于收集各個(gè)節(jié)點(diǎn)的故障信息的管理器會實(shí)時(shí)的向資源管理器上報(bào)每個(gè)節(jié)點(diǎn)的故障信息,以便資源管理器確定節(jié)點(diǎn)的歷史特征。303、所述資源管理器根據(jù)所述第一歷史特征信息和第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源;或者,所述資源管理器根據(jù)所述第二歷史特征信息和第二調(diào)度策略為所述r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源。具體的,采用第一調(diào)度策略為n個(gè)應(yīng)用程序調(diào)度資源的過程中需要用到第一歷史特征信息,由于第一歷史特征信息中包括n個(gè)應(yīng)用程序的歷史特征,因此,根據(jù)第一歷史特征信息和第一調(diào)度策略僅僅可以為上述r個(gè)應(yīng)用程序中的n個(gè)應(yīng)用程序調(diào)度資源,上述r個(gè)應(yīng)用程序中的除n個(gè)應(yīng)用程序之外的應(yīng)用程序使用的資源可以采用預(yù)設(shè)調(diào)度策略進(jìn)行調(diào)度,具體的,關(guān)于預(yù)設(shè)調(diào)度策略的相關(guān)描述見下文。具體的,采用第二調(diào)度策略為應(yīng)用程序調(diào)度資源的過程中不需要用到應(yīng)用程序的歷史特征,該情況下,資源管理器可以根據(jù)第二歷史特征信息和第二調(diào)度策略為多個(gè)應(yīng)用程序中的一個(gè)或多個(gè)或全部應(yīng)用程序調(diào)度資源。示例性的,第一調(diào)度策略可以為:按照n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源使用量為n個(gè)應(yīng)用程序調(diào)度資源,或者,按照n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源使用量的(1+x)倍為n個(gè)應(yīng)用程序調(diào)度資源,示例性的,x可以取0.1或0.2。示例性的,當(dāng)?shù)诙v史特征信息為m個(gè)節(jié)點(diǎn)的故障率時(shí),第二調(diào)度策略可以為:將m個(gè)節(jié)點(diǎn)中的故障率越低的節(jié)點(diǎn)的資源越早分配。該情況下,若m個(gè)節(jié)點(diǎn)上運(yùn)行的應(yīng)用程序數(shù)量不多時(shí),可以使得運(yùn)行的應(yīng)用程序的穩(wěn)定性較高。需要說明的是,本發(fā)明實(shí)施例中并不限制第一調(diào)度策略和第二調(diào)度策略的具體內(nèi)容,第一調(diào)度策略和第二調(diào)度策略為調(diào)度目的服務(wù),當(dāng)調(diào)度目的變化時(shí),第一調(diào)度策略和第二調(diào)度策略也可以進(jìn)行相應(yīng)的調(diào)整。可選的,所述方法還包括:當(dāng)所述資源管理器未成功獲取所述歷史特 征信息時(shí),所述資源管理器根據(jù)預(yù)設(shè)調(diào)度策略為所述r個(gè)應(yīng)用程序調(diào)度資源。需要說明的是,預(yù)設(shè)調(diào)度策略可以為公平調(diào)度策略、容量調(diào)度策略和先進(jìn)先出調(diào)度策略等調(diào)度策略中的任意一種調(diào)度策略。可選的,所述方法還包括:所述資源管理器根據(jù)所述第一歷史特征信息調(diào)整第一調(diào)度參數(shù),所述第一調(diào)度參數(shù)包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù),所述第一調(diào)度參數(shù)用于確定為所述n個(gè)應(yīng)用程序調(diào)度資源的順序;所述資源管理器根據(jù)所述第一歷史特征信息和第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源,包括:所述資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源??蛇x的,所述方法還包括:所述資源管理器根據(jù)所述第一歷史特征信息和所述第二歷史特征信息調(diào)整第一調(diào)度參數(shù),其中,所述第一調(diào)度參數(shù)包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù)和所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),所述第一調(diào)度參數(shù)用于確定為所述n個(gè)應(yīng)用程序調(diào)度資源的順序和調(diào)度所述m個(gè)節(jié)點(diǎn)的資源的順序;所述資源管理器根據(jù)所述第一歷史特征信息和第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源,包括:所述資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源。可選的,所述n個(gè)應(yīng)用程序的歷史特征包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;所述m個(gè)節(jié)點(diǎn)的歷史特征包括所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率,所述資源管理器根據(jù)所述第一歷史特征信息和所述第二歷史特征信息調(diào)整第一調(diào)度參數(shù),包括:所述資源管理器確定所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;所述資源管理器根據(jù)所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率計(jì)算所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率,一個(gè)節(jié)點(diǎn)的健康率等于 該節(jié)點(diǎn)的故障率的α倍與該節(jié)點(diǎn)的任務(wù)失敗率的β倍之和,α=1-β,0<α<1;所述資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源,包括:所述資源管理器將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。該情況下,第一調(diào)度策略即資源管理器將健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序;第一調(diào)度參數(shù)即m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率和n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長。其中,α的初始值可以預(yù)置,例如,α可以為0.5。需要說明的是,節(jié)點(diǎn)的健康率越高時(shí),該節(jié)點(diǎn)的穩(wěn)定性也越高,該可選的方法,由于將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給了綜合歷史運(yùn)行時(shí)長越長的節(jié)點(diǎn),能夠提高長時(shí)應(yīng)用程序(即運(yùn)行一次應(yīng)用程序所需的時(shí)間較長的應(yīng)用程序)的運(yùn)行穩(wěn)定性??蛇x的,所述方法還包括:所述資源管理器多次計(jì)算所述多個(gè)節(jié)點(diǎn)中的全部節(jié)點(diǎn)的任務(wù)成功率,并在每次計(jì)算完成后根據(jù)所述任務(wù)成功率調(diào)整所述α的值,直至確定出的所述α的值使得所述任務(wù)成功率最高為止。其中,全部節(jié)點(diǎn)的任務(wù)成功率=全部節(jié)點(diǎn)的運(yùn)行任務(wù)成功的次數(shù)÷全部節(jié)點(diǎn)的運(yùn)行的總?cè)蝿?wù)次數(shù)。該可選的方法在具體實(shí)現(xiàn)時(shí),為了提高系統(tǒng)的任務(wù)成功率,在計(jì)算出全部節(jié)點(diǎn)的任務(wù)成功率之后,增加(或減小)α的值,并重新計(jì)算全部節(jié)點(diǎn)的任務(wù)成功率,若全部節(jié)點(diǎn)的任務(wù)成功率增大,則繼續(xù)增加(或減小)α的值,若全部節(jié)點(diǎn)的任務(wù)成功率降低,則減小(或增加)α的值,直至確定出的α的值能夠使得全部節(jié)點(diǎn)的任務(wù)成功率最高為止。在增加(或減小)α的值時(shí),可以每次增加0.05或0.1,也可以增加其他量。該可選的方法,能夠確定最優(yōu)的α的值,從而使得系統(tǒng)的任務(wù)成功率最高。可選的,所述n個(gè)應(yīng)用程序的歷史特征包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資 源申請量,所述資源管理器根據(jù)所述第一歷史特征信息調(diào)整第一調(diào)度參數(shù),包括:當(dāng)該應(yīng)用程序的綜合歷史資源利用率小于預(yù)設(shè)閾值時(shí),所述資源管理器采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,所述第一閾值大于該應(yīng)用程序的綜合歷史資源使用量;所述資源管理器將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值,所述第一閾值小于所述第二閾值;所述資源管理器根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為該應(yīng)用程序調(diào)度資源,包括:所述資源管理器按照所述第一閾值為該應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源量是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源量再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為所述第二閾值為止。在該可選的方法中,第一調(diào)度參數(shù)即第一閾值和第二閾值。該可選的方法中的資源可以為節(jié)點(diǎn)的cpu資源、內(nèi)存資源、磁盤空間資源、磁盤i/o資源、網(wǎng)絡(luò)i/o資源以及文件句柄數(shù)等資源中的任意一種,該可選的方法,根據(jù)應(yīng)用程序的綜合歷史資源使用情況確定第一閾值和第二閾值,先按照第一閾值為應(yīng)用程序調(diào)度資源,再根據(jù)應(yīng)用程序?qū)嶋H使用的資源量調(diào)整為該應(yīng)用程序分配的資源量,從而避免了資源浪費(fèi),提高了資源利用率??蛇x的,所述方法還包括:所述資源管理器根據(jù)所述第二歷史特征信息調(diào)整第二調(diào)度參數(shù),所述第二調(diào)度參數(shù)包括所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),所述第二調(diào)度參數(shù)用于確定調(diào)度所述m個(gè)節(jié)點(diǎn)的資源的順序;所述資源管理器根據(jù)所述第二歷史特征信息和第二調(diào)度策略為所述r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源,包括:所述資源管理器根據(jù)調(diào)整后的第二調(diào)度參數(shù)和所述第二調(diào)度策略為所述r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào) 度資源。本發(fā)明實(shí)施例提供的方法,資源管理器在接收到多個(gè)應(yīng)用程序發(fā)送的資源請求后,獲取節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征,并根據(jù)節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征為應(yīng)用程序分配資源,由于節(jié)點(diǎn)的歷史特征可以間接的表征節(jié)點(diǎn)當(dāng)前或未來的特征,應(yīng)用程序的歷史特征可以間接的表征應(yīng)用程序的當(dāng)前運(yùn)行或未來運(yùn)行時(shí)的特征,在本發(fā)明實(shí)施例中,并不根據(jù)應(yīng)用程序的資源請求中請求的資源量為應(yīng)用程序分配資源,而是通過節(jié)點(diǎn)和/或應(yīng)用程序的歷史特征為應(yīng)用程序分配資源,這樣可以防止資源管理器根據(jù)應(yīng)用程序請求的資源量為應(yīng)用程序分配資源所造成的資源浪費(fèi),使得資源調(diào)度更合理。本發(fā)明實(shí)施例還提供了一種資源調(diào)度方法,基于表1所述的示例對上述資源調(diào)度方法進(jìn)行示例性說明,該實(shí)施例中,第一調(diào)度策略為:將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序,如圖4所示,該方法具體包括:401、資源管理器接收4個(gè)應(yīng)用程序的資源請求。其中,4個(gè)應(yīng)用程序即表1中所示的4個(gè)應(yīng)用程序。具體的,4個(gè)應(yīng)用程序的資源請求可以為資源管理器在一個(gè)心跳周期內(nèi)接收到的全部的應(yīng)用程序的資源請求,4個(gè)應(yīng)用程序的資源請求可以為4個(gè)客戶端設(shè)備提交的應(yīng)用程序的資源請求。402、資源管理器確定4個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長,并確定m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率。其中,若資源管理器在2015年12月1日接收4個(gè)應(yīng)用程序的資源請求,則4個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的歷史運(yùn)行次數(shù)可以參見表1,每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長可以為該應(yīng)用程序的多次歷史運(yùn)行時(shí)長的平均值或者最大值,則應(yīng)用程序4沒有歷史運(yùn)行時(shí)長。資源管理器計(jì)算m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率的方法可以參見上文,在此不再贅述。403、資源管理器計(jì)算m個(gè)節(jié)點(diǎn)的健康率。具體的,一個(gè)節(jié)點(diǎn)的健康率的計(jì)算方法為:該節(jié)點(diǎn)的健康率=α×該節(jié)點(diǎn)的故障率+β×該節(jié)點(diǎn)的任務(wù)失敗率,α=1-β=0.5。404、資源管理器根據(jù)應(yīng)用程序1、應(yīng)用程序2和應(yīng)用程序3的綜合歷史運(yùn)行時(shí)長、m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率以及第一調(diào)度策略為應(yīng)用程序1、應(yīng)用程序2和應(yīng)用程序3調(diào)度資源。步驟404在具體實(shí)現(xiàn)時(shí),資源管理器將m個(gè)節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給應(yīng)用程序1、應(yīng)用程序2和應(yīng)用程序3中的綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。步驟404在具體實(shí)現(xiàn)時(shí),為了方便調(diào)度,資源管理器可以將應(yīng)用程序1、應(yīng)用程序2和應(yīng)用程序3的綜合歷史運(yùn)行時(shí)長按照由大至小的順序進(jìn)行排列,將m個(gè)節(jié)點(diǎn)的健康率按照由高至低的順序進(jìn)行排列,再根據(jù)排列結(jié)果進(jìn)行調(diào)度。405、資源管理器采用預(yù)設(shè)調(diào)度策略為應(yīng)用程序4調(diào)度資源。需要說明的是,由于應(yīng)用程序4沒有綜合歷史運(yùn)行時(shí)長,無法采用第一調(diào)度策略為應(yīng)用程序4調(diào)度資源,因此,采用預(yù)設(shè)調(diào)度策略為應(yīng)用程序4調(diào)度資源,預(yù)設(shè)調(diào)度策略可以為公平調(diào)度策略、容量調(diào)度策略和先進(jìn)先出調(diào)度策略等調(diào)度策略中的任意一種調(diào)度策略。本發(fā)明實(shí)施例提供的方法,當(dāng)資源管理器確定多個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長和m個(gè)節(jié)點(diǎn)的健康率之后,可以將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序,由于節(jié)點(diǎn)的健康率越高時(shí),節(jié)點(diǎn)的穩(wěn)定性也越高,因此,該方法可以提高長時(shí)應(yīng)用程序的運(yùn)行穩(wěn)定性。本發(fā)明實(shí)施例還提供了一種資源調(diào)度方法,用于對上述實(shí)施例提供的資源調(diào)度方法進(jìn)行示例性說明,該實(shí)施例中,第一調(diào)度策略為:按照第一閾值為應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源再次計(jì)算 得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為第二閾值為止,如圖5所示,該方法具體包括:501、資源管理器接收客戶端設(shè)備提交的應(yīng)用程序的資源請求。502、資源管理器確定該應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量。此處的“資源”可以為節(jié)點(diǎn)的cpu資源、內(nèi)存資源、磁盤空間資源、磁盤i/o資源、網(wǎng)絡(luò)i/o資源以及文件句柄數(shù)等資源中的任意一種。當(dāng)資源管理器成功確定該應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量時(shí),執(zhí)行步驟503,否則,執(zhí)行步驟507。503、資源管理器判斷該應(yīng)用程序的綜合歷史資源利用率是否小于預(yù)設(shè)閾值。具體的,預(yù)設(shè)閾值可以為百分之八十、百分之九十,也可以為其他值。若是,執(zhí)行步驟504,若否,執(zhí)行步驟506。504、資源管理器采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值。其中,第一閾值大于該應(yīng)用程序的綜合歷史資源使用量,第一閾值小于第二閾值。資源管理器采用預(yù)設(shè)算法計(jì)算第一閾值的方法可以為:第一閾值=綜合歷史資源使用量×(1+γ)×100%,γ大于0,γ的值可以取0.1,或其他值。505、資源管理器根據(jù)第一閾值、第二閾值和第一調(diào)度策略為該應(yīng)用程序調(diào)度資源。具體的,資源管理器按照第一閾值為應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按 照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為第二閾值為止。506、資源管理器按照該應(yīng)用程序的綜合歷史資源申請量為該應(yīng)用程序調(diào)度資源。需要說明的是,當(dāng)該應(yīng)用程序的綜合歷史資源利用率大于或等于預(yù)設(shè)閾值時(shí),認(rèn)為該應(yīng)用程序的綜合歷史資源利用率較高,則按照該應(yīng)用程序的綜合歷史資源申請量為該應(yīng)用程序調(diào)度資源。507、資源管理器采用預(yù)設(shè)調(diào)度策略為該應(yīng)用程序調(diào)度資源。需要說明的是,若無法成功確定該應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量,則無法采用第一調(diào)度策略為該應(yīng)用程序調(diào)度資源,因此,采用預(yù)設(shè)調(diào)度策略為該應(yīng)用程序調(diào)度資源,預(yù)設(shè)調(diào)度策略可以為公平調(diào)度策略、容量調(diào)度策略和先進(jìn)先出調(diào)度策略等調(diào)度策略中的任意一種調(diào)度策略。本發(fā)明實(shí)施例提供的方法,當(dāng)資源管理器獲取到應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量后,可以確定第一閾值和第二閾值,其中,第一閾值大于綜合歷史資源使用量、且第一閾值小于第二閾值(即綜合歷史資源申請量),資源管理器可以先按照第一閾值為該應(yīng)用程序調(diào)度資源,若資源管理器實(shí)際使用的資源量始終小于第一閾值,則不再為該應(yīng)用程序增加資源,若資源管理器實(shí)際使用的資源量大于第一閾值,則為該應(yīng)用程序增加資源,從而可以避免該應(yīng)用程序占用多余的資源,提高了資源利用率。本發(fā)明實(shí)施例還提供一種資源調(diào)度裝置60,用于管理和調(diào)度集群資源,所述集群包括多個(gè)節(jié)點(diǎn),與所述集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在所述多個(gè)節(jié)點(diǎn)上,r為正整數(shù),如圖6所示,所述裝置60包括:接收單元601,用于接收所述r個(gè)應(yīng)用程序的資源請求;獲取單元602,用于獲取歷史特征信息,所述歷史特征信息包括第一 歷史特征信息和第二歷史特征信息中的至少一項(xiàng),所述第一歷史特征信息為所述r個(gè)應(yīng)用程序中的n個(gè)應(yīng)用程序的歷史特征;所述第二歷史特征信息為所述多個(gè)節(jié)點(diǎn)中的m個(gè)節(jié)點(diǎn)的歷史特征;所述m個(gè)節(jié)點(diǎn)為所述多個(gè)節(jié)點(diǎn)中的有空閑資源的m個(gè)節(jié)點(diǎn),其中,應(yīng)用程序的歷史特征包括用于表示該應(yīng)用程序的歷史資源使用情況的信息和用于表示該應(yīng)用程序的歷史運(yùn)行時(shí)間的信息中的至少一項(xiàng),節(jié)點(diǎn)的歷史特征包括該節(jié)點(diǎn)的故障率以及任務(wù)失敗率中的至少一項(xiàng),1≤n≤r,m≥1,n、m均為整數(shù);調(diào)度單元603,用于根據(jù)所述第一歷史特征信息和第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源;或者,根據(jù)所述第二歷史特征信息和第二調(diào)度策略為所述r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源??蛇x的,如圖7所示,所述裝置60還包括:調(diào)整單元604,用于根據(jù)所述第一歷史特征信息調(diào)整第一調(diào)度參數(shù),所述第一調(diào)度參數(shù)包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù),所述第一調(diào)度參數(shù)用于確定為所述n個(gè)應(yīng)用程序調(diào)度資源的順序;所述調(diào)度單元603,具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源??蛇x的,如圖7所示,所述裝置60還包括:調(diào)整單元604,用于根據(jù)所述第一歷史特征信息和所述第二歷史特征信息調(diào)整第一調(diào)度參數(shù),其中,所述第一調(diào)度參數(shù)包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序?qū)?yīng)的調(diào)度參數(shù)和所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),所述第一調(diào)度參數(shù)用于確定為所述n個(gè)應(yīng)用程序調(diào)度資源的順序和調(diào)度所述m個(gè)節(jié)點(diǎn)的資源的順序;所述調(diào)度單元603,具體用于:根據(jù)調(diào)整后的第一調(diào)度參數(shù)和所述第一調(diào)度策略為所述n個(gè)應(yīng)用程序調(diào)度資源??蛇x的,如圖7所示,所述裝置60還包括:調(diào)整單元604,用于根據(jù)所述第二歷史特征信息調(diào)整第二調(diào)度參數(shù),所述第二調(diào)度參數(shù)包括所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)對應(yīng)的調(diào)度參數(shù),所述第二調(diào)度參數(shù)用于確定調(diào)度所述m個(gè)節(jié)點(diǎn)的資源的順序;所述調(diào)度單元603,具體用于:根據(jù)調(diào)整后的第二調(diào)度參數(shù)和所述第二調(diào)度策略為所述r個(gè)應(yīng)用程序中的至少一個(gè)應(yīng)用程序調(diào)度資源??蛇x的,所述n個(gè)應(yīng)用程序的歷史特征包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;所述m個(gè)節(jié)點(diǎn)的歷史特征包括所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率;所述調(diào)整單元604,具體用于:確定所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史運(yùn)行時(shí)長;根據(jù)所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的故障率和任務(wù)失敗率計(jì)算所述m個(gè)節(jié)點(diǎn)中的每個(gè)節(jié)點(diǎn)的健康率,一個(gè)節(jié)點(diǎn)的健康率等于該節(jié)點(diǎn)的故障率的α倍與該節(jié)點(diǎn)的任務(wù)失敗率的β倍之和,α=1-β,0<α<1;所述調(diào)度單元603,具體用于:將節(jié)點(diǎn)的健康率越高的節(jié)點(diǎn)的資源分配給綜合歷史運(yùn)行時(shí)長越長的應(yīng)用程序。可選的,如圖7所示,所述裝置60還包括:計(jì)算單元605,用于多次計(jì)算所述多個(gè)節(jié)點(diǎn)中的全部節(jié)點(diǎn)的任務(wù)成功率,并在每次計(jì)算完成后根據(jù)所述任務(wù)成功率調(diào)整所述α的值,直至確定出的所述α的值使得所述任務(wù)成功率最高為止??蛇x的,所述n個(gè)應(yīng)用程序的歷史特征包括所述n個(gè)應(yīng)用程序中的每個(gè)應(yīng)用程序的綜合歷史資源利用率、綜合歷史資源使用量和綜合歷史資源申請量;所述調(diào)整單元604,具體用于:當(dāng)該應(yīng)用程序的綜合歷史資源利用率小于預(yù)設(shè)閾值時(shí),采用預(yù)設(shè)算法對該應(yīng)用程序的綜合歷史資源使用量初次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,所述第一閾值大于該應(yīng)用程序的綜合歷史資源使用量;將該應(yīng)用程序的綜合歷史資源申請量確定為該應(yīng)用程序?qū)?yīng)的第二閾值,所述第一閾值小于所述第二閾值;所述調(diào)度單元603,具體用于:按照所述第一閾值為該應(yīng)用程序調(diào)度資源、并實(shí)時(shí)監(jiān)控該應(yīng)用程序?qū)嶋H使用的資源量是否超過第一閾值,若是,采用預(yù)設(shè)算法對該應(yīng)用程序?qū)嶋H使用的資源量再次計(jì)算得到該應(yīng)用程序?qū)?yīng)的第一閾值,并按照本次計(jì)算得到的第一閾值與前一次計(jì)算得到的第一閾值的差值為該應(yīng)用程序增加資源,直至該應(yīng)用程序?qū)嶋H使用的資源為 所述第二閾值為止??蛇x的,所述歷史資源包括所述節(jié)點(diǎn)的中央處理器cpu資源、內(nèi)存資源、磁盤空間資源、磁盤i/o資源、網(wǎng)絡(luò)i/o資源和文件句柄數(shù)資源中的一種或多種資源。本發(fā)明實(shí)施例中提供的裝置中的各個(gè)單元執(zhí)行的動(dòng)作與本發(fā)明實(shí)施例提供的方法一致,因此,本發(fā)明實(shí)施例中的裝置的有益效果可參見本發(fā)明實(shí)施例中的方法中所述的有益效果,此處不再贅述。本發(fā)明實(shí)施例還提供了一種資源調(diào)度裝置80,用于管理和調(diào)度集群資源,所述集群包括多個(gè)節(jié)點(diǎn),與所述集群支持的計(jì)算框架適配的r個(gè)應(yīng)用程序運(yùn)行在所述多個(gè)節(jié)點(diǎn)上,r為正整數(shù),所述裝置80包括:接收器801、存儲器802、處理器803和總線系統(tǒng)804;其中,接收器801、存儲器802和處理器803之間是通過總線系統(tǒng)804耦合在一起的,其中存儲器802可能包含隨機(jī)存取存儲器,也可能還包括非易失性存儲器,例如至少一個(gè)磁盤存儲器??偩€系統(tǒng)804,可以是工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(industrystandardarchitecture,簡稱isa)總線、外部設(shè)備互連(peripheralcomponent,簡稱pci)總線或擴(kuò)展工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(extendedindustrystandardarchitecture,簡稱eisa)總線等。該總線系統(tǒng)804可以分為地址總線、數(shù)據(jù)總線、控制總線等。為便于表示,圖8中僅用一條粗線表示,但并不表示僅有一根總線或一種類型的總線。需要說明的是,在一個(gè)實(shí)施例中,接收器801、存儲器802和處理器803用于執(zhí)行上述實(shí)施例所述的方法,具體的,接收器801用于執(zhí)行基于圖3所述的方法中的步驟301,處理器用于執(zhí)行基于圖3所述的方法中的步驟302和步驟303;接收器801還用于執(zhí)行基于圖4所述的方法中的步驟401,處理器還用于執(zhí)行基于圖4所述的方法中的步驟402至步驟405;接收器801還用于執(zhí)行基于圖5所述的方法中的步驟501,處理器還用于執(zhí)行基于圖5所述的方法中的步驟502至步驟507。本發(fā)明實(shí)施例中提供的裝置中的各個(gè)器件執(zhí)行的動(dòng)作與本發(fā)明實(shí)施例提供的方法一致,因此,本發(fā)明實(shí)施例中的裝置的有益效果可參見本發(fā)明實(shí)施例中的方法中所述的有益效果,此處不再贅述。其中,接收單元601可以為接收器801,獲取單元602、調(diào)度單元603、調(diào)整單元604和計(jì)算單元605可以為處理器803。在硬件實(shí)現(xiàn)上,裝置60中的接收單元和裝置80中的接收器可以為射頻(radiofrequency,簡稱rf)電路,裝置60中的其他單元可以以硬件形式內(nèi)嵌于或獨(dú)立于裝置的處理器中,也可以以軟件形式存儲于裝置的存儲器中,以便于處理器調(diào)用執(zhí)行以上各個(gè)單元對應(yīng)的操作,該處理器可以為cpu、特定集成電路(applicationspecificintegratedcircuit,簡稱asic)或者是被配置成實(shí)施本發(fā)明實(shí)施例的一個(gè)或多個(gè)集成電路。在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)模塊或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。另外,在本發(fā)明各個(gè)實(shí)施例中的各功能模塊可以集成在一個(gè)處理模塊中,也可以兩個(gè)或兩個(gè)以上模塊集成在一個(gè)模塊中。上述集成的模塊既可以采用硬件的形式實(shí)現(xiàn),也可以采用硬件加軟件功能模塊的形式實(shí)現(xiàn)。上述以軟件功能模塊的形式實(shí)現(xiàn)的集成的模塊,可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中。上述軟件功能模塊存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的部分步驟。而前述的存儲介質(zhì)包括:u盤、移動(dòng)硬盤、只讀存儲器(read-onlymemory,簡稱rom)、隨機(jī)存取存儲器(randomaccessmemory,簡稱ram)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。當(dāng)前第1頁12