ほとんどの場合、MaxCompute を使用する企業は、ビジネス要件に基づいてデータ分離のために複数の MaxCompute プロジェクトを作成します。各 MaxCompute プロジェクトで必要な計算ユニット(CU)の数はさまざまです。そのため、CU の使用率を最大化するには、プロジェクトごとに CU を分離する必要があります。このトピックでは、MaxCompute コンソールでクォータ管理機能を使用して、MaxCompute のサブスクリプション CU を分離する方法について説明します。
背景情報
MaxCompute コンソールの クォータ管理 機能を使用して、購入したサブスクリプション CU を分離できます。[クォータ管理] では、次のクォータが提供されます。
デフォルトのサブスクリプションクォータ:サブスクリプション CU の購入後にデフォルトで作成されるクォータです。このクォータは変更できません。スペックアップまたはスペックダウン中に、クォータの CU 数が増減します。
カスタムクォータ:カスタムクォータでは、[予約済み CU [mincu,maxcu]] の minCU の値が、デフォルトのサブスクリプションクォータの値から差し引かれます。 maxCU は、購入した予約済み CU の数に設定できます。パラメーターの説明:
minCU:必要な CU の最小数。
maxCU:使用可能な CU の最大数。複数のクォータが構成されており、クォータの minCU の値が maxCU の値よりも小さい場合、クォータは別のクォータのアイドル状態の CU を占有できます。この場合、現在のリージョンにおける現在のアカウントのすべてのクォータは、共有リソースグループになります。
すべてのクォータの minCU の合計は、購入した予約済み CU の数と等しくなります。
例
シナリオ
データウェアハウスチームは、MaxCompute を使用して、さまざまなビジネスのデータウェアハウスの開発と本番、運用と分析、およびアルゴリズムマイニングを実行します。データウェアハウスチームは、ビジネス要件に基づいてさまざまな MaxCompute プロジェクトを作成します。
データウェアハウスの開発と本番:データウェアハウスモデルに基づいて、MaxCompute プロジェクトをデータウェアハウス開発プロジェクトとデータウェアハウス本番プロジェクトに分類します。
運用と分析:日次データを取得して分析するために、ビジネス要件に基づいて、さまざまな部門専用の MaxCompute プロジェクトを作成します。
アルゴリズムマイニング:ジョブサイクルの特性に基づいて、MaxCompute プロジェクトをアルゴリズム開発プロジェクトとアルゴリズム本番プロジェクトに分類します。
予備的なビジネス評価結果に基づいて、1,000 の予約済み CU が購入されます。 CU の使用率を最大化するには、CU を適切に分離して割り当てる必要があります。
CU の割り当て
CU を割り当てるときは、次の点に注意してください。
CU の誤用を防ぐために、実際の要件に基づいて [予約済み CU [mincu,maxcu]] の minCU を構成する必要があります。
優先度が低く、最小限の保証要件しかないが、多数の CU をリクエストする可能性のある MaxCompute プロジェクトの場合、関連するクォータの [予約済み CU [mincu,maxcu]] の maxCU の値を制御して、他のクォータへの影響を防ぐことをお勧めします。
平均して長期間 CU を占有する MaxCompute プロジェクトの場合、個別のクォータを作成し、そのクォータの [予約済み CU [mincu,maxcu]] の maxCU の値を制御できます。
時間指定構成機能を使用して、CU の使用率を最大化できます。時間指定構成機能の詳細については、「MaxCompute コンソールで計算リソースのクォータを管理する」をご参照ください。
デフォルトのサブスクリプションクォータの CU クォータは変更できません。プロジェクトによって開始されたジョブがすべての CU を消費しないようにするには、デフォルトのサブスクリプションクォータをプロジェクトに関連付けないことをお勧めします。デフォルトのサブスクリプションクォータの [予約済み CU [mincu,maxcu]] の minCU の値を 0 にすることはできません。 minCU を 1 に設定して、1 つの CU を予約できます。この場合、maxCU の値が他のクォータの minCU の値よりも大きい場合、これらのクォータは引き続き予約済み CU を占有できます。
クォータの設計
クォータ | シナリオ | 予約済み CU [minCU,maxCU] の minCU | 予約済み CU [minCU,maxCU] の 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 [minCU,maxCU] の maxCU は、他のクォータの最小保証値への影響を防ぐために制限されています。クォータを設計する場合、デフォルトのサブスクリプションクォータは MaxCompute プロジェクトに関連付けられませんが、クォータの [予約済み CU [mincu,maxcu]] の minCU は 0 より大きい必要があります。 1 つの CU を予約し、データウェアハウス開発プロジェクトの minCU の値を 1 減らすことができます。
手順
期間を指定する場合は、00:00:00~09:00:00 と 09:00:00~23:59:59 の 2 つの期間を追加します。詳細については、「MaxCompute コンソールで計算リソースのクォータを管理する」をご参照ください。
クォータを追加し、クォータ計画に基づいて、データウェアハウス本番用クォータ、データウェアハウス開発用クォータ、アルゴリズム本番用クォータ、アルゴリズム開発用クォータ、および運用と分析用クォータを指定します。構成操作の詳細については、「クォータを構成する」をご参照ください。
クォータをプロジェクトに関連付けます。新しいデフォルトのサブスクリプションクォータは、プロジェクトに自動的に関連付けられません。手動構成が必要です。
説明クォータをプロジェクトに関連付けるには、プロジェクトの [パラメーター構成] タブで [デフォルトクォータ] パラメーターを構成します。詳細については、「プロジェクトを構成する」をご参照ください。
クォータをジョブに関連付ける方法については、「クォータルール」をご参照ください。
関連情報
ビジネス要件の変化に伴い、クォータの割り当ても変更する必要があります。そのため、クォータの使用状況を常に監視して、できるだけ早くクォータを調整する必要があります。 CloudMonitor の [maxcompute_ サブスクリプション] メトリックに基づいて、クォータの使用状況を監視できます。詳細については、「監視とアラート」をご参照ください。
MaxCompute のリソース管理機能を使用して、きめ細かいリソース管理を実行することもできます。たとえば、弾性予約 CU の計画と構成、MaxCompute のクォータの使用、ジョブの優先度の構成などが可能です。詳細については、「弾性予約 CU の計画と構成のベストプラクティス」、「計算リソースのクォータグループを使用する」、および「ジョブの優先度」をご参照ください。
CU の使用状況をクエリする方法については、「リソースの監視を使用する」をご参照ください。