基于馬爾科夫模型的亞馬遜彈性計算云競價方法
【專利摘要】本發(fā)明涉及Web網(wǎng)絡(luò)服務(wù)【技術(shù)領(lǐng)域】,具體涉及一種基于馬爾科夫模型的亞馬遜彈性計算云競價方法;該亞馬遜彈性計算云競價方法包括步驟:S1.根據(jù)歷史運(yùn)行實(shí)例價格數(shù)據(jù),構(gòu)建待競價亞馬遜彈性計算云運(yùn)行實(shí)例的價格轉(zhuǎn)換概率模型;S2.確定當(dāng)前運(yùn)行實(shí)例周期的狀態(tài);S3.結(jié)合所述價格轉(zhuǎn)換概率模型以及當(dāng)前運(yùn)行實(shí)例周期的狀態(tài),構(gòu)建下一運(yùn)行實(shí)例周期競價決策的受限馬爾科夫模型;S4.以最小化運(yùn)行成本期望值為目標(biāo)函數(shù),根據(jù)所述受限馬爾科夫模型求解得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策;S5.重復(fù)步驟S2-S4,直至計算任務(wù)執(zhí)行完畢。本發(fā)明實(shí)施例所提供的亞馬遜彈性計算云競價方法能夠在滿足運(yùn)行時限要求的同時實(shí)現(xiàn)最低運(yùn)行成本。
【專利說明】基于馬爾科夫模型的亞馬遜彈性計算云競價方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于云計算領(lǐng)域,涉及Web網(wǎng)絡(luò)服務(wù)技術(shù),具體涉及ー種用于在亞馬遜彈性計算云運(yùn)行實(shí)例周期價格隨供求關(guān)系動態(tài)變化的情況下,自適應(yīng)調(diào)節(jié)競價決策以達(dá)到運(yùn)行可靠性與運(yùn)行成本之間平衡的亞馬遜弾性計算云競價方法。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)通信技木、Web應(yīng)用服務(wù)和云計算技術(shù)的快速發(fā)展和日益成熟,計算能力逐漸作為ー種空前重要的資源,得到越來越多的重視和不斷的發(fā)掘。得益于云計算技術(shù)的應(yīng)用,寶貴的計算資源得以通過按需分配的形式租讓給用戶。2009年12月,亞馬遜(Amazon)開放了運(yùn)行實(shí)例(Spot Instance),公開拍賣亞馬遜彈性計算云的閑置計算資源,為用戶提供了獲得計算資源的新方式。參與競價的用戶將有機(jī)會獲得彈性計算云上的資源以便運(yùn)行計算任務(wù)。
[0003]迄今為止,亞馬遜提供了 64種不同類型的運(yùn)行實(shí)例,包括標(biāo)準(zhǔn)型(Standard),高CPU型(High-CPU)和高內(nèi)存型(High-Memory)等等。提供計算資源的服務(wù)器更是廣泛分布于北美大陸和歐亞大陸。亞馬遜為不同類型的運(yùn)行實(shí)例設(shè)定了不同的價格區(qū)間,圖1是亞馬遜部署在美國東部的弾性計算云運(yùn)行實(shí)例的價格示意圖;在每個運(yùn)行實(shí)例周期(Instance hour)中,特定類型的運(yùn)行實(shí)例價格(Spot price)由亞馬遜進(jìn)行更新。依據(jù)亞馬遜的執(zhí)行標(biāo)準(zhǔn),運(yùn)行實(shí)例周期以單位小時為定義。不同運(yùn)行實(shí)例周期的運(yùn)行實(shí)例價格會根據(jù)供求關(guān)系的變化產(chǎn)生波動。參與競價的用戶給出愿意為每個運(yùn)行實(shí)例周期付出的最高競價,當(dāng)動態(tài)變化的運(yùn)行實(shí)例價格低于用戶的競價時,用戶將獲得所競價的運(yùn)行實(shí)例資源(In-bid),直到運(yùn)行實(shí)例價格浮動超過該用戶的競價(Out-of-bid)。在姆個運(yùn)行實(shí)例周期中,亞馬遜根據(jù)當(dāng)前的運(yùn)行實(shí)例價格對競價成功的用戶進(jìn)行收費(fèi);圖2a-2c是亞馬遜對彈性計算云運(yùn)行實(shí)例收費(fèi)規(guī)則的示意圖;圖3是所提交計算任務(wù)在運(yùn)行實(shí)例上運(yùn)行過程的示意圖。
[0004]對于需要運(yùn)行靈活性較高、計算量較大的計算任務(wù)的用戶來說,競價亞馬遜提供的運(yùn)行實(shí)例可以大大降低任務(wù)的運(yùn)行成本。此外,運(yùn)行實(shí)例還為需要快速集中處理的計算任務(wù)提供了額外的資源。此處僅列舉幾類適用于運(yùn)行實(shí)例的計算任務(wù):例如視頻圖像處理、生物醫(yī)學(xué)復(fù)雜分子結(jié)構(gòu)計算、大規(guī)模實(shí)時金融數(shù)據(jù)分析等。
[0005]通過以上介紹,我們可以清晰了解到,有效利用運(yùn)行實(shí)例資源的難點(diǎn)在于如何在運(yùn)行穩(wěn)定性和運(yùn)行成本之間取得平衡。較高的競價固然會達(dá)到更高的運(yùn)行穩(wěn)定性,但必然會帶來更高的運(yùn)行開銷;降低競價使得運(yùn)行開銷得到控制,然而會導(dǎo)致運(yùn)行時間的延長,甚至遠(yuǎn)遠(yuǎn)超過所提交計算任務(wù)真正所需的計算時間,大部分運(yùn)行時間消耗于競價失敗的空白等待時間。
[0006]現(xiàn)有的云計算中間件服務(wù)不具備智能化競價能力,未來理想的中間件需要能夠自動對運(yùn)行實(shí)例歷史價格數(shù)據(jù)進(jìn)行分析,結(jié)合所提交計算任務(wù)的運(yùn)行時限和成本要求,以自適應(yīng)決策的方式為用戶提供最優(yōu)的競價方法。[0007]在本發(fā)明中,我們探究針對亞馬遜彈性計算云運(yùn)行實(shí)例的最優(yōu)競價方法,解決如何在滿足計算任務(wù)運(yùn)行時限的前提下獲得最低的運(yùn)行成本。
[0008]前人的研究工作主要圍繞價格概率模型和檢查點(diǎn)設(shè)置機(jī)制展開。具體來講,就是在給定計算任務(wù)運(yùn)行時限和成本要求的情況下,如何有效地建立價格概率模型以及合理地設(shè)置檢查點(diǎn)從而及時保存計算完成的中間結(jié)果,避免因競價失敗情況發(fā)生時,計算資源被自動收回而丟失計算進(jìn)度。然而,上述工作僅僅考慮了靜態(tài)的競價方法,即用戶的競價在競價過程中被作為定值參數(shù)進(jìn)行建模,忽略了動態(tài)競價模型能夠產(chǎn)生的成本收益。
【發(fā)明內(nèi)容】
[0009](一)要解決的技術(shù)問題
[0010]本發(fā)明的目的在于針對上述問題,提供一種基于馬爾科夫模型的亞馬遜弾性計算云競價方法,通過自適應(yīng)調(diào)節(jié)在各運(yùn)行實(shí)例周期中執(zhí)行的競價決策以達(dá)到運(yùn)行可靠性與運(yùn)行成本之間的平衡,在滿足時限要求的同時實(shí)現(xiàn)最低的運(yùn)行成本,特別適合應(yīng)用于云計算網(wǎng)絡(luò)服務(wù)用戶。
[0011](ニ)技術(shù)方案
[0012]為解決上述技術(shù)問題,本發(fā)明技術(shù)方案如下:
[0013]一種基于馬爾科夫模型的亞馬遜弾性計算云競價方法,包括步驟:
[0014]S1.根據(jù)歷史運(yùn)行實(shí)例價格數(shù)據(jù),構(gòu)建待競價亞馬遜彈性計算云運(yùn)行實(shí)例的價格轉(zhuǎn)換概率模型;
[0015]S2.確定當(dāng)前運(yùn)行實(shí)例周期的狀態(tài);
[0016]S3.結(jié)合所述價格轉(zhuǎn)換概率模型以及當(dāng)前運(yùn)行實(shí)例周期的狀態(tài),構(gòu)建下一運(yùn)行實(shí)例周期競價決策的受限馬爾科夫模型;
[0017]所述受限馬爾科夫模型滿足:
[0018]任意兩個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率為正數(shù);
[0019]運(yùn)行時限內(nèi)完成計算總量期望值不少于計算任務(wù)計算總量;
[0020]各個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率的總和為I ;
[0021]各個運(yùn)行實(shí)例周期的狀態(tài)轉(zhuǎn)出率和轉(zhuǎn)入率相等;
[0022]S4.以最小化運(yùn)行成本期望值為目標(biāo)函數(shù),根據(jù)所述受限馬爾科夫模型求解得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策;
[0023]S5.重復(fù)步驟S2-S4,直至計算任務(wù)執(zhí)行完畢。
[0024]優(yōu)選的,所述步驟S4與步驟S5之間還包括:
[0025]若所述最優(yōu)競價決策為放棄競價,則在當(dāng)前運(yùn)行實(shí)例周期結(jié)束前做檢查點(diǎn)。
[0026]優(yōu)選的,所述亞馬遜彈性計算云運(yùn)行實(shí)例周期為單位小吋。
[0027]優(yōu)選的,所述步驟S2中,根據(jù)當(dāng)前運(yùn)行實(shí)例周期的價格以及當(dāng)前運(yùn)行實(shí)例周期之前兩個運(yùn)行實(shí)例周期的競價結(jié)果,確定所述當(dāng)前運(yùn)行實(shí)例周期的狀態(tài)。
[0028]優(yōu)選的,所述步驟S3中,根據(jù)每個運(yùn)行實(shí)例周期的狀態(tài)以及每個運(yùn)行實(shí)例周期的競價決策計算所述運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率。
[0029]優(yōu)選的,所述步驟S3中,根據(jù)單個運(yùn)行實(shí)例周期完成的計算量期望值和所需的運(yùn)行時間計算所述運(yùn)行時限內(nèi)完成計算總量期望值。[0030]優(yōu)選的,根據(jù)單個運(yùn)行實(shí)例周期的狀態(tài)以及執(zhí)行的競價決策計算所述單個運(yùn)行實(shí)例周期完成的計算量期望值。
[0031]優(yōu)選的,所述步驟S3中,根據(jù)所述狀態(tài)轉(zhuǎn)換概率及其相應(yīng)的達(dá)爾塔函數(shù)限定所述各個運(yùn)行實(shí)例狀態(tài)的轉(zhuǎn)出率和轉(zhuǎn)入率相等。
[0032]優(yōu)選的,所述步驟S4中,對與所述受限馬爾科夫模型等價的線性規(guī)劃方程求解,得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策。
[0033]優(yōu)選的,所述最優(yōu)競價決策為放棄競價或者競價最高實(shí)例價格。
[0034](三)有益效果
[0035]本發(fā)明實(shí)施例所提供的基于馬爾科夫模型的亞馬遜弾性計算云競價方法,在采取了上述技術(shù)方案以后的有益效果如下所述:
[0036]第一,由于充分利用官方公布的歷史運(yùn)行實(shí)例價格數(shù)據(jù),建立價格轉(zhuǎn)換概率模型,亥畫運(yùn)行實(shí)例價格隨時間變化規(guī)律以及同類運(yùn)行實(shí)例不同價格間的轉(zhuǎn)換規(guī)律;
[0037]第二,巧妙使用價格轉(zhuǎn)換概率模型,通過價格轉(zhuǎn)換規(guī)律預(yù)測未來運(yùn)行實(shí)例周期的價格走勢,把握更多低價競拍機(jī)會;并結(jié)合計算任務(wù)的運(yùn)行時限以及成本要求,在運(yùn)行進(jìn)度和競價成本之間取得平衡;
[0038]第三,由于是ー種動態(tài)競價模型,可以挖掘ニ值競價決策的潛在價值;在每個運(yùn)行實(shí)例周期中,用戶有機(jī)會依據(jù)對價格走勢和計算進(jìn)度的分析來不斷更新自己的競價決策,通過自適應(yīng)調(diào)節(jié)競價來實(shí)現(xiàn)在滿足運(yùn)行時限的前提下達(dá)到最低運(yùn)行成本的目標(biāo);
[0039]第四,在每個運(yùn)行實(shí)例周期中為下ー個運(yùn)行實(shí)例周期制定競價決策,如果選定的最優(yōu)競價決策為放棄競價,則在當(dāng)前運(yùn)行實(shí)例周期的末尾設(shè)置檢查點(diǎn),提前備份計算任務(wù)完成的中間結(jié)果,以免計算進(jìn)度丟失,進(jìn)ー步提高運(yùn)行效率。
【專利附圖】
【附圖說明】
[0040]圖1是亞馬遜部署在美國東部的弾性計算云運(yùn)行實(shí)例的價格示意圖;
[0041]圖2a_2c是亞馬遜對彈性計算云運(yùn)行實(shí)例收費(fèi)規(guī)則的示意圖;
[0042]圖3是所提交計算任務(wù)在運(yùn)行實(shí)例上運(yùn)行過程的示意圖;
[0043]圖4是本發(fā)明實(shí)施例中基于馬爾科夫模型的亞馬遜弾性計算云競價方法的流程示意圖;
[0044]圖5a_5c是本發(fā)明實(shí)施例中基于馬爾科夫模型的亞馬遜弾性計算云競價方法所采用的價格轉(zhuǎn)換概率模型的柱狀圖;
[0045]圖6a_6c是本發(fā)明實(shí)施例中基于馬爾科夫模型的亞馬遜弾性計算云競價方法所采用的運(yùn)行進(jìn)度度量過程說明示意;
[0046]圖7a_7b是本發(fā)明實(shí)施例中基于馬爾科夫模型的亞馬遜弾性計算云競價方法所采用的運(yùn)行實(shí)例狀態(tài)轉(zhuǎn)換過程的示意圖。
【具體實(shí)施方式】
[0047]下面結(jié)合附圖和實(shí)施例,對本發(fā)明的【具體實(shí)施方式】做進(jìn)ー步描述。以下實(shí)施例僅用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
[0048]如圖4中所示,本實(shí)施例中所提供的亞馬遜弾性計算云競價方法主要包括步驟:[0049]S1.根據(jù)歷史運(yùn)行實(shí)例價格數(shù)據(jù),構(gòu)建待競價亞馬遜彈性計算云運(yùn)行實(shí)例的價格轉(zhuǎn)換概率模型;
[0050]S2.根據(jù)當(dāng)前運(yùn)行實(shí)例周期的價格以及當(dāng)前運(yùn)行實(shí)例周期之前兩個運(yùn)行實(shí)例周期的競價結(jié)果或者其他因素,確定當(dāng)前運(yùn)行實(shí)例周期的狀態(tài);
[0051]S3.結(jié)合所述價格轉(zhuǎn)換概率模型以及當(dāng)前運(yùn)行實(shí)例周期的狀態(tài),構(gòu)建下一運(yùn)行實(shí)例周期競價決策的受限馬爾科夫模型;
[0052]所述受限馬爾科夫模型滿足:
[0053]任意兩個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率為正數(shù);
[0054]運(yùn)行時限內(nèi)完成計算總量期望值不少于計算任務(wù)計算總量;
[0055]各個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率的總和為I ;
[0056]各個運(yùn)行實(shí)例周期的狀態(tài)轉(zhuǎn)出率和轉(zhuǎn)入率相等;
[0057]S4.以最小化運(yùn)行成本期望值為目標(biāo)函數(shù),對與所述受限馬爾科夫模型等價的線性規(guī)劃方程求解,得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策;
[0058]S5.重復(fù)步驟S2-S4,直至計算任務(wù)執(zhí)行完畢。
[0059]優(yōu)選的,所述步驟S4與步驟S5之間還包括:
[0060]若所述最優(yōu)競價決策為放棄競價,則在當(dāng)前運(yùn)行實(shí)例周期結(jié)束前做檢查點(diǎn)。
[0061]由于本實(shí)施例中所提供的亞馬遜弾性計算云競價方法是ー種動態(tài)競價模型,用戶可以于每個運(yùn)行實(shí)例周期更新自己的競價,不再采用由始至終単一的競價價格。ニ值動態(tài)競價模型采用由兩種競價決策組成的競價決策序列,在每個運(yùn)行實(shí)例周期中為下ー運(yùn)行實(shí)例周期制定競價決策。上述ニ值動態(tài)競價模型中所述兩種競價決策,其一是于下一運(yùn)行實(shí)例周期競價該類型運(yùn)行實(shí)例的最高實(shí)例價格,其ニ是于下一運(yùn)行實(shí)例周期放棄競價。由于亞馬遜對用戶的收費(fèi)以當(dāng)前運(yùn)行實(shí)例周期的價格為準(zhǔn),ニ值動態(tài)競價模型可被證明包含競價方法的最優(yōu)解。
[0062]此外,目前亞馬遜規(guī)定用戶在提交計算任務(wù)的同時給出能夠接受的最高競價價格和所需要的運(yùn)行實(shí)例周期數(shù)目。ニ值的動態(tài)競價模型在實(shí)際中的應(yīng)用可以通過以下方法來實(shí)現(xiàn)。在計算任務(wù)提交后的每個運(yùn)行實(shí)例周期中,本發(fā)明的競價方法會根據(jù)運(yùn)行實(shí)例價格波動情況以及任務(wù)計算量完成進(jìn)度,結(jié)合用戶設(shè)定的任務(wù)要求來為下ー個運(yùn)行實(shí)例周期選擇ー個競價決策。如果其與當(dāng)前競價決策一致,則不需要做任何改動。如果不一致,則分兩種情況:其一,由放棄競價轉(zhuǎn)為競價最高實(shí)例價格,此時用戶直接提交未完成的計算任務(wù)并標(biāo)出最高價格即可;其ニ,由競價最高運(yùn)行實(shí)例價格轉(zhuǎn)為放棄競價,此時用戶在當(dāng)前運(yùn)行實(shí)例周期的末尾將計算任務(wù)中間結(jié)果保存后直接退出競價即可。
[0063]下面結(jié)合附圖和具體的所采用的算法對本實(shí)施例所提供的亞馬遜彈性計算云競價方法進(jìn)行更為詳細(xì)的描述。
[0064]圖5a_5c是本實(shí)施例中競價方法所采用的價格轉(zhuǎn)換概率模型的柱狀圖。其主要展示了亞馬遜部署在北美東部和西部三種類型的弾性計算云運(yùn)行實(shí)例的價格轉(zhuǎn)換概率。發(fā)明人通過研究發(fā)現(xiàn),對于待競價的運(yùn)行實(shí)例,在相當(dāng)長的一段時間內(nèi)(例如ー個月以上),運(yùn)行實(shí)例價格的波動范圍有限(通常在0.1美元以內(nèi))。對于具有E個不同運(yùn)行實(shí)例價格的運(yùn)行實(shí)例,建立EXE規(guī)格的矩陣,其中每個元素A(o,り定義為在當(dāng)前運(yùn)行實(shí)例周期中運(yùn)行實(shí)例價格為O時,下一運(yùn)行實(shí)例周期中運(yùn)行實(shí)例價格為T的概率:[0065]
【權(quán)利要求】
1.一種基于馬爾科夫模型的亞馬遜弾性計算云競價方法,其特征在于,包括步驟: 51.根據(jù)歷史運(yùn)行實(shí)例價格數(shù)據(jù),構(gòu)建待競價亞馬遜彈性計算云運(yùn)行實(shí)例的價格轉(zhuǎn)換概率模型; 52.確定當(dāng)前運(yùn)行實(shí)例周期的狀態(tài); 53.結(jié)合所述價格轉(zhuǎn)換概率模型以及當(dāng)前運(yùn)行實(shí)例周期的狀態(tài),構(gòu)建下一運(yùn)行實(shí)例周期競價決策的受限馬爾科夫模型; 所述受限馬爾科夫模型滿足: 任意兩個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率為正數(shù); 運(yùn)行時限內(nèi)完成計算總量期望值不少于計算任務(wù)計算總量; 各個運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率的總和為I ; 各個運(yùn)行實(shí)例周期的狀態(tài)轉(zhuǎn)出率和轉(zhuǎn)入率相等; 54.以最小化運(yùn)行成本期望值為目標(biāo)函數(shù),根據(jù)所述受限馬爾科夫模型求解得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策; 55.重復(fù)步驟S2-S4,直至計算任務(wù)執(zhí)行完畢。
2.根據(jù)權(quán)利要求1所述的亞馬遜彈性計算云競價方法,其特征在于,所述步驟S4與步驟S5之間還包括: 若所述最優(yōu)競價決策為放棄競價,則在當(dāng)前運(yùn)行實(shí)例周期結(jié)束前做檢查點(diǎn)。
3.根據(jù)權(quán)利要求1所述的亞馬遜彈性計算云競價方法,其特征在于,所述亞馬遜彈性計算云運(yùn)行實(shí)例周期為單位小吋。
4.根據(jù)權(quán)利要求1-3任意一項所述的亞馬遜弾性計算云競價方法,其特征在于,所述步驟S2中,根據(jù)當(dāng)前運(yùn)行實(shí)例周期的價格以及當(dāng)前運(yùn)行實(shí)例周期之前兩個運(yùn)行實(shí)例周期的競價結(jié)果,確定所述當(dāng)前運(yùn)行實(shí)例周期的狀態(tài)。
5.根據(jù)權(quán)利要求4所述的亞馬遜彈性計算云競價方法,其特征在于,所述步驟S3中,根據(jù)每個運(yùn)行實(shí)例周期的狀態(tài)以及每個運(yùn)行實(shí)例周期的競價決策計算所述運(yùn)行實(shí)例周期的狀態(tài)間轉(zhuǎn)換概率。
6.根據(jù)權(quán)利要求1-3或5任意一項所述的亞馬遜弾性計算云競價方法,其特征在于,所述步驟S3中,根據(jù)單個運(yùn)行實(shí)例周期完成的計算量期望值和所需的運(yùn)行時間計算所述運(yùn)行時限內(nèi)完成計算總量期望值。
7.根據(jù)權(quán)利要求6所述的亞馬遜彈性計算云競價方法,其特征在干,根據(jù)單個運(yùn)行實(shí)例周期的狀態(tài)以及執(zhí)行的競價決策計算所述單個運(yùn)行實(shí)例周期完成的計算量期望值。
8.根據(jù)權(quán)利要求1_3、5或7任意一項所述的亞馬遜弾性計算云競價方法,其特征在干,所述步驟S3中,根據(jù)所述狀態(tài)轉(zhuǎn)換概率及其相應(yīng)的達(dá)爾塔函數(shù)限定所述各個運(yùn)行實(shí)例狀態(tài)的轉(zhuǎn)出率和轉(zhuǎn)入率相等。
9.根據(jù)權(quán)利要求8所述的亞馬遜彈性計算云競價方法,其特征在于,所述步驟S4中,對與所述受限馬爾科夫模型等價的線性規(guī)劃方程求解,得到下一運(yùn)行實(shí)例周期的最優(yōu)競價決策。
10.根據(jù)權(quán)利要求1_3、5、7或9任意一項所述的亞馬遜弾性計算云競價方法,其特征在于,所述最優(yōu)競價決策為放棄競價或者競價最高實(shí)例價格。
【文檔編號】G06Q30/00GK103593770SQ201310507982
【公開日】2014年2月19日 申請日期:2013年10月24日 優(yōu)先權(quán)日:2013年10月24日
【發(fā)明者】李向陽, 唐少杰, 劉云浩, 孫家廣, 毛續(xù)飛, 苑靖 申請人:清華大學(xué)