對於使用MaxCompute的企業,通常會根據業務的差異性來建立多個MaxCompute專案進行資料隔離。由於每個MaxCompute專案對計算資源(CU)的需求不一致,需要對CU按照專案進行隔離,以便實現CU使用率最大化。本文為您介紹如何通過MaxCompute管理主控台的配額(Quota)管理功能隔離MaxCompute訂用帳戶CU。
背景資訊
您可以通過MaxCompute管理主控台的配額(Quota)管理功能對購買的訂用帳戶CU進行隔離。配額(Quota)管理支援的配額組如下:
預設預付費Quota:購買訂用帳戶計算資源後,系統預設建立的配額組。該配額組不支援修改。升級或降配時,對應的CU量都在該配額組中進行增減。
自訂配額組:在自訂的配額組中,預留CU量[minCU,maxCU]中minCU的值將從預設預付費Quota配額組對應的值裡進行扣減。maxCU可以設定為購買的預留CU量。其中:
minCU:為最小保障CU量。
maxCU:可使用的最大CU量。當有多個配額組且配置了minCU<maxCU時,一旦有配額組的CU處於空閑狀態時,其他配額組可以佔用空閑CU。該實現會導致所有配額組在當前帳號目前範圍內都是共用資源組。
所有配額組的minCU相加等於購買的預留CU量。
使用案例
情境
資料倉儲團隊使用MaxCompute進行開發、分析、挖掘的業務大致為:資料倉儲開發和生產、營運分析需求、演算法挖掘。基於不同的業務建立不同的MaxCompute專案:
資料倉儲開發和生產:按照資料倉儲模型分層劃分MaxCompute專案,分為資料倉儲開發專案和資料倉儲生產專案。
營運分析需求:根據業務需求建立不同部門專用的MaxCompute專案,擷取日常資料並進行分析。
演算法挖掘:根據作業周期特點劃分MaxCompute專案,分為演算法開發專案和演算法生產專案。
根據前期業務評估結果,購買的預留CU量為1000 CU。現在需要將這些CU合理地進行隔離分配,以便能最大化提升CU使用率。
劃分CU
劃分CU時,您可以關注如下內容:
預留CU量的minCU要根據實際配置避免濫用。
對於非高保障,優先順序也不高但是可能請求大量CU的MaxCompute專案,建議控制對應配額組預留CU量的maxCU,以免影響其他配額組。
對於平均佔用CU時間較長的MaxCompute專案可以設定獨立配額組,同時控制對應配額組的預留CU量的maxCU。
您可以根據實際情況結合分時功能實現CU利用最大化。更多分時資訊,請參見分時配置。
預設預付費Quota配額組不支援修改CU配額,如果您不希望出現某些專案發起的作業可能會佔用所有CU量的情況,可以考慮預設預付費Quota配額組不關聯專案。由於預設預付費Quota配額組預留CU量的minCU不能為0,可以保留1 CU,然後設定其他配額組中的minCU<maxCU,其他配額組依然能佔用這1 CU。
設計配額組
配額組 | 特點 | 預留CU量的minCU | 預留CU量的maxCU | 關聯專案 | 分時設定 |
資料倉儲生產配額組 | 高保障,有較為突出的CU請求波峰時段,小時作業CU請求較平穩。 |
|
| 資料倉儲生產專案 |
|
資料倉儲開發配額組 | 高保障,有較為突出的CU請求波穀時段。 |
|
| 資料倉儲開發專案 |
|
演算法生產配額組 | 高保障,部分作業的CPU佔用量較高且已耗用時間較長。 | 300 | 300 | 演算法生產專案 | 00:00:00~23:59:59 |
演算法開發配額組 | 高保障,部分作業的CPU佔用量較高且已耗用時間較長。 | 50 | 50 | 演算法開發專案 | 00:00:00~23:59:59 |
營運分析配額組 | 使用的人員多,需要一定的CU保障,有較為突出的CU請求波穀時段,會有一些大作業長時間佔用資源。 |
|
| 營運分析專案 |
|
考慮到上述業務的特點,對應配額組預留CU量的maxCU都進行了限制,避免嚴重影響其他配額組的最低保障值。設計配額組時,預設預付費Quota配額組不關聯MaxCompute專案,但預留CU量的minCU又必須大於0,可以保留1 CU,將資料倉儲開發專案的minCU減1。
設定步驟
參考文檔
隨著業務的不斷變化,配額組的劃分也需要隨之改變,所以您有必要隨時監控配額組的使用方式,以便及時對配額組進行調整。您可以通過阿里雲監控服務的MaxCompute-訂用帳戶Quota組資源指標進行監控,詳情請參見監控警示。
您還可以結合MaxCompute更多的資源管理功能實現更精細的資源管理,例如彈性預留CU最佳實務、計算資源使用和作業優先順序。