MaxCompute為您提供成本最佳化(計算成本最佳化)功能,可基於實際作業請求量和資源配置期望,對訂用帳戶一級Quota類型的計算資源產生更優的資源配置方案,協助您進一步最佳化計算成本。本文通過典型情境案例介紹如何通過成本最佳化(計算資源最佳化推薦)功能,為您提供降本增效的參考建議。
注意事項
本文所涉及的價格資料均為樣本值,實際價格以產品購買頁面為準。
以下典型案例的評估方式比較簡單,在實際業務實施過程中,您需要綜合多方面考慮,建議您依據實際情況逐漸層配至推薦方案,並關注變更配置後效果。
典型情境一:訂用帳戶計算資源閑置,計算成本高
某公司在數倉建設初期,公司預算充足,且為了確保淩晨一批重要作業在上午八點產出,購買了訂用帳戶預留計算資源200CU供作業使用,每天有520個作業固定運行在這些資源上,每天作業都可以如期、甚至提前完成,但每月計算成本高達4,400 USD。
最近公司給巨量資料部門下達了降本的OKR,部門領導很是頭疼:一是不清楚降本後還能否滿足重要作業的產出情況,二是無法確定最合適的降本方案。這時資料營運工程師小K向領導建言,他瞭解到MaxCompute推出了成本最佳化功能,馬上開啟MaxCompute控制台向領導展示了操作:
進入成本最佳化頁面。
登入MaxCompute控制台,在左上方選擇地區後,在左側導覽列,選擇成本管理 > 成本最佳化。
在成本最佳化頁面,選擇訂用帳戶一級Quota,呈現出每天所需CU預測值。
小K看到這張CU請求預測,認為很符合現在的業務現狀,每小時都有一批請求較少的作業發起,在每天
05:00
~08:00
間有一批請求較多的作業發起。
設定評估時間點。
在設定評估時間點地區,小K結合自身的商務程序,他決定設定
05:00
、08:00
為兩個評估時間點。即在較為重要的那批作業發起前保證此前的作業可以於5點運行完畢,5點發起的那批作業可以於8點前運行完畢。
查看現狀方案評估結果。
單擊現狀方案評估,查看當前資源配置情況下,作業產出情況。
通過CU消耗類比圖,小K看到,在當前的CU配置(預留CU=200)下,作業產出均沒有延遲,但是也可以看到計算資源出現了明顯的閑置情況,說明有較大的降本空間。
設定最佳化目標。
在評估的CU消耗類比圖下方,是設定最佳化目標地區,以表格的形式展現了設定的評估時間點的延遲現狀,與類比圖展示一致。
小K看到最佳化目標一欄預設填寫了評估時間點,這正是他所期望的作業完成時間,於是單擊產生推薦方案。
查看推薦方案。
最佳化效果依舊以CU消耗類比的方式呈現,小K看到推薦方案為購買預留50CU,在
04:00~05:00
、06:00~08:00
分別購買彈性預留50CU,重要作業預估仍然可以在08:00
點前完成,而月計算成本僅需1,319.6 USD,對比現狀方案每月可節省約70%的費用。領導看到這個方案非常滿意,詢問小K是否還有降本空間。小K想了想,或許可以允許作業延遲30分鐘產出,也不會對業務造成較大影響,於是他進行了最佳化目標的調整。
調整最佳化目標。
返回設定最佳化目標地區,將評估時間點
08:00
點對應的最佳化目標設定為08:30
。
重新查看推薦方案。
再次單擊產生推薦方案。小K看到推薦方案為購買預留50CU,在
04:00~05:00
、06:00~07:00
分別購買彈性預留50CU,重要作業預估仍然可以在08:30
前完成,計算成本降低為1,246.4 USD,對比現狀方案每月可節省約71.7%的費用。
逐步調整為推薦方案。
為了避免推薦方案實施後效果不穩定,部門開會後決定先不過度降本,先將預留CU整體下調至100,一段時間後重新進行評估,作業量沒有明顯上漲,系統仍推薦降配併疊加彈性預留CU,於是部門按照不延時的推薦方案進行配置,經過一段時間的試運行,重要作業幾乎每天依然可以按時完成,也實現了計算成本的降低。
典型情境二:訂用帳戶計算資源不足,作業完成時間不達預期
某公司在數倉建設初期購買了預留60CU的訂用帳戶計算資源供作業使用,每天有520個作業固定運行在這些資源上,其中有一批較為重要的作業通常在淩晨五點陸續發起,業務側希望在上午八點前運行完畢。隨著業務拓展,作業的掃描資料量持續增加,工程師小K發現這批作業經常延遲完成,經過資源消耗發現是由於預留資源不足導致作業積壓,但是他不確定如何調整資源既可以滿足作業的完成需求,又不至於費用提升太多。這時他瞭解到MaxCompute推出了成本最佳化功能,馬上開啟MaxCompute控制台進行了操作:
進入成本最佳化頁面。
登入MaxCompute控制台,在左上方選擇地區後,在左側導覽列,選擇成本管理 > 成本最佳化。
在成本最佳化頁面,選擇訂用帳戶一級Quota,呈現出每天所需CU預測值。
小K看到這張CU請求預測,認為很符合現在的業務現狀,每小時都有一批請求較少的作業發起,在
05:00
~08:00
間有一批請求較多的作業發起。
設定評估時間點。
在設定評估時間點地區,小K結合自身的商務程序,他決定設定
05:00
、08:00
為兩個評估時間點。即在較為重要的那批作業發起前保證此前的作業可以於5點運行完畢,5點發起的那批作業可以於8點前運行完畢。
查看現狀方案評估結果。
單擊現狀方案評估,查看當前資源配置情況下,作業產出情況。
通過CU消耗類比圖,小K看到,在當前的CU配置(預留CU=60)下,
05:00
前提交的作業評估有3分鐘延遲,05:00
~08:00
點間提交的較為重要的那批作業有高達48分鐘的延遲,這與實際感受到的延遲時間相近。
設定最佳化目標。
在評估的CU消耗類比圖下方,是設定最佳化目標地區,以表格的形式展現了設定的評估時間點的延遲現狀,與類比圖展示一致。
小K看到最佳化目標一欄預設填寫了評估時間點,這正是他所期望的作業完成時間,於是單擊產生推薦方案。
查看推薦方案。
最佳化效果依舊以CU消耗類比(推薦方案)的方式呈現,包含資訊與現狀評估圖一致,小K看到推薦方案為購買預留50CU,在
04:00~05:00
、06:00~08:00
分別購買彈性預留50CU,即可實現05:00
和08:00
的作業延遲為0。且成本比現有的方案還減少0.4 USD/月。
配置推薦方案。
小K認為這個推薦方案的預估成本上升是可以接受的,但是為了避免推薦方案實施後效果不穩定,他決定先不下調預留CU量,先只按照推薦方案配置彈性預留CU,觀察一段時間。
在MaxCompute管理主控台左側導覽列,選擇工作區 > 配額(Quota)管理。
在Quota管理頁面,單擊剛剛評估的一級Quota操作列的Quota配置。
在Quota配置頁面的Quota計劃頁簽,單擊添加。
在新增Quota計劃,將彈性預留CU設定為
50
後,單擊確定。依據推薦方案的時間配置如下Quota時間計劃,詳細操作請參見配置Quota。
開始時間
啟用Quota計劃
00:00
Default
04:00
上一步驟新增的Quota計劃。
05:00
Default
06:00
上一步驟新增的Quota計劃。
08:00
Default
說明Default計劃的彈性預留CU量為
0
。
經過一段時間的試運行,小K發現重要作業幾乎每天都可以按時完成,提升了研發效率,計算成本也未提升太多。