リソース観測では、データ転送サービス、コンピューティングリソース、ストレージリソースの使用状況を経時的に監視します。メトリクスチャートを分析してジョブの実行計画とリソース構成を最適化し、ジョブの効率とパフォーマンスを向上させます。
権限
Alibaba Cloud アカウントは、リソース観測の表示と管理に関するすべての権限を持っています。
RAM ユーザーには特定の RAM 権限が必要です。詳細については、「RAM権限」をご参照ください。
コンピューティングリソース
サブスクリプションおよび従量課金クォータの CU 消費量を表示できます。
操作手順
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側メニューで、[Resource Observation] をクリックします。
[Resource Observation] ページで、[Computing Resource] タブをクリックします。
レベル 1 クォータ、期間、時間間隔を選択します。
時間間隔はデータポイントの頻度を指定します。自動、または 1 分、5 分、15 分の間隔を選択できます。パフォーマンスを確保するため、期間が 72 時間を超える場合、システムは自動的に間隔を「自動」に設定します。
対象のレベル 2 クォータの左側にある
アイコンをクリックして、リソース消費量の推移チャートを表示します。複数のチャートを同時に展開できます。各レベル 2 クォータに関連付けられているプロジェクトのリストを表示します。
メトリクス
メトリクス | 説明 |
[CPU リソース] | 現在のクォータグループの CPU 使用量の推移です。タイムライン上のポイントをクリックすると、その時点のジョブスナップショットのリストを表示できます。 |
[Memory リソース] | 現在のクォータグループのメモリ使用量の推移です。 重要 従量課金リソースは共有されます。コンピューティングジョブはこれらのリソースをオンデマンドで占有するため、固定された使用量を指定することはできません。単一のユーザーが継続的に大量のリソースをリクエストする場合、MaxCompute は他のユーザーの公平なアクセスを確保するために、そのユーザーのリソース使用量を制限します。 |
クォータと関連プロジェクトのリストには、対応するレベル 2 クォータをデフォルトのコンピューティングクォータとして設定したプロジェクトが表示されます。
ストレージリソース
現在のリージョンにおける合計ストレージ使用量と各ストレージタイプの割合を表示します。また、選択したプロジェクトと期間の使用量の推移を監視し、詳細なテーブルまたはパーティションのストレージ情報を表示できます。
操作手順
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側メニューで、リソース監視 をクリックします。
リソース監視 ページで、ストレージリソース タブをクリックして、当日の合計ストレージ使用量とストレージ分布を表示します。
(任意) 期間 (デフォルトは 7 日) とプロジェクト (デフォルトはすべてのプロジェクト。最大 8 つのプロジェクトを選択可能) を選択して、ストレージトレンド を表示します。
(任意) ストレージ明細 エリアの プロジェクト明細 タブで、日付 (デフォルトは当日) を選択して、各プロジェクトのストレージ使用量を表示します。
(任意) ストレージ明細 エリアの テーブル/パーティション明細 タブで、日付 (デフォルトは当日) とプロジェクトを選択して、プロジェクト内の詳細なテーブルとパーティションのストレージ使用量を表示します。
メトリクス
メトリクス | 説明 |
[本日のストレージ使用量] | 現在のリージョンにおける合計ストレージ使用量と各ストレージタイプのストレージ使用量の割合です。データは約 1 時間ごとに更新されます。 |
[ストレージ分布] | 現在のリージョンにおけるプロジェクト、テーブル、パーティションの数です。データは毎日更新されます。 |
[ストレージトレンド] |
|
[プロジェクト明細] | 現在のリージョンにおいて、指定した日付 (過去 1 年以内) に合計ストレージが 0 より大きいプロジェクトの、さまざまなストレージタイプの詳細なストレージ使用量です。また、N 日前 (1 日、7 日、または 30 日) のデータとの合計ストレージの比較も表示されます。 |
[テーブル/パーティション明細] | 指定したプロジェクト内のすべてのテーブルとパーティションについて、指定した日付 (過去 1 年以内) におけるストレージタイプ、ストレージサイズ、および N 日前 (1 日、7 日、または 30 日) のデータとの比較です。 |
MaxCompute は、列ごとのストレージ使用量の表示をサポートしていません。列レベルのストレージを推定するには、テーブルデータをエクスポートして、各列の使用量を計算します。
データ転送サービス
特定のデータ転送サービスリソースグループまたはプロジェクトのリソース使用量を表示します。フィルターを使用して、個々のテーブルまたはリクエストタイプの使用量をより詳細に分析できます。
操作手順
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側メニューで、 を選択します。
[Resource Observation] ページで、転送サービス タブをクリックします。
クォータ、プロジェクト、期間、集約アルゴリズムを選択して、各メトリクスの使用量をクエリします。
注意事項
データ集約メカニズム
データ転送サービスの監視では、メトリクス間隔にアダプティブメカニズムを使用し、選択した期間に基づいて監視データの密度を自動的に調整します。
短期間 (3 時間以内) では、生データの粒度 (1 分/ポイント) を使用します。
長期間では、メトリクスステップが自動的に 5 分/ポイント (12 時間)、30 分/ポイント (72 時間)、または 60 分/ポイント (7 日間) に延長されます。
複数の集約戦略から選択できます。
平均:全体的なデータの推移を反映します。
最大:異常な変動を捉えます。
ステップが基本粒度 (1 分) を超える場合、システムは集約戦略に従ってデータを処理してからチャートを描画します。期間が長いほど、アルゴリズム間の潜在的なデータの差が大きくなります。これは想定される動作です。分析シナリオに適した集約アルゴリズムを選択してください。
パフォーマンス分析:平均集約アルゴリズムの使用を推奨します。
トラブルシューティング:最大集約アルゴリズムの使用を推奨します。
フィルターと制限
期間でフィルタリングする場合、一度に最大 7 日間を選択できます。アダプティブメカニズムにより、選択した期間が短いほど、監視データはより正確になります。
少なくとも 1 つのクォータまたはプロジェクトを選択する必要があります。クォータとプロジェクトの組み合わせを使用してフィルタリングすることもできます。
クォータのみで使用量監視を表示するには:クォータを選択する際に、専有または共有リソースグループを指定できます。共有リソースグループはプロジェクトレベルのクォータであるため、共有リソースグループを監視する場合は、プロジェクトも指定する必要があります。
プロジェクトのみで使用量監視を表示するには:クォータの選択 を選択せず、プロジェクトの選択 で目的のプロジェクトを指定します。そのプロジェクトの合計使用量が表示されます。
フィルター条件を変更した後、監視データを更新するには Query をクリックする必要があります。
一部のテーブルレベルの監視ダッシュボードでは、データを表示したり、テーブル名でフィルタリングしたりする前に、プロジェクトを選択する必要があります。
メトリクス
メトリクス | 説明 |
[リクエスト同時実行数] | 選択したフィルターに基づくスロット使用量を表示します。現在の使用量とクォータ制限が含まれます。単位はスロットです。 |
[スループット] | 選択したフィルターに基づくスループットを表示します。単位 (B/min、MB/min など) は縦軸に表示されます。 |
[テーブルレベルのリクエスト同時実行数] | 使用タイプ (例:Tunnel Batch アップロード) と テーブル名 (例:testtable) を選択します。チャートには、フィルター条件に基づいて、Tunnel Batch メソッドを使用して |
[テーブル別 IP スループット] | 使用タイプ (例:Tunnel Batch アップロード) と テーブル名 (例:testtable) を選択します。チャートには、フィルター条件に基づいて、Tunnel Batch メソッドを使用して |
[総リクエスト数とエラーリクエスト数] | フィルター条件に基づく合計リクエスト数とさまざまなエラーリクエストの数です。
|
[データ量の集計] | フィルター条件に基づいて、選択した期間内のさまざまな使用タイプのデータ量の概要です。円グラフには、各使用タイプの割合が表示されます。 |
[スロット平均転送速度] | 使用タイプ (例:Tunnel Batch アップロード) を選択します。チャートには、フィルター条件に基づいて、Tunnel Batch アップロードメソッドを使用するリクエストのスロットあたりの平均転送レートが表示されます。 |
ジョブパフォーマンス観測
コンピューティングジョブのジョブ数、CU使用量、実行時間を表示して、パフォーマンスが期待に応えているかどうかを判断します。
操作手順
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側メニューで、リソース監視 をクリックします。
リソース監視 ページで、ジョブパフォーマンス監視 タブをクリックします。
次のパラメータを選択して、ジョブをフィルタリングおよびグループ化します。これにより、特定のジョブを表示し、さまざまな次元でチャート内のメトリクスデータをグループ化できます。
パラメータ
説明
[時間範囲]
必須です。指定した期間 (開始時刻と終了時刻) に基づいて、完了したジョブをフィルタリングします。
事前設定された期間を選択するか、カスタム期間を設定できます。
1d:過去 1 日です。
3d:過去 3 日です。
7d:過去 7 日です。
特定の期間を選択:期間のドロップダウンリストをクリックし、目的の日付を選択してから、時刻を選択 をクリックして対象の期間を選択します。
説明デフォルトの期間は過去 1 日です。最大期間は 7 日、最小期間は 1 時間です。過去 45 日間のジョブを検索できます。
[プロジェクトの選択]
MaxCompute プロジェクト名でフィルタリングします。
説明デフォルトでは、すべてのプロジェクトが選択されています。最大 8 つのプロジェクトを選択できます。
[クォータの選択]
コンピューティングクォータでフィルタリングします。
説明デフォルトでは、すべてのコンピューティングクォータが選択されています。最大 8 つのレベル 2 クォータを選択できます。コンピューティングクォータの詳細については、「コンピューティングクォータの管理」をご参照ください。
[グループ化項目]
必須です。チャートタイプに応じて、チャート内のデータを複数の次元でグループ化できます。
グループ化の有効な値:
[グループなし] (デフォルト) :フィルタリングされた範囲内のすべてのジョブのさまざまなメトリクスの経時的な推移を表示します。
[プロジェクト]:フィルタリングされた範囲内のすべてのジョブのさまざまなメトリクスを、プロジェクト別にグループ化して表示します。
説明プロジェクト別にグループ化する場合は、フィルターパラメータでプロジェクトを指定する必要があります。最大 8 つのプロジェクトを指定できます。
[クォータ]フィルタリングされた範囲内のすべてのジョブのさまざまなメトリクスを、レベル 2 クォータ別にグループ化して表示します。
説明クォータ別にグループ化する場合は、フィルターパラメータでクォータを指定する必要があります。最大 8 つのレベル 2 クォータを指定できます。
[ジョブタイプ]:フィルタリングされた範囲内のすべてのジョブのさまざまなメトリクスを、ジョブタイプ別にグループ化して表示します。
SQL:SQL ジョブです。
MCQA:MaxCompute Query Acceleration (MCQA) SQL ジョブです。
LOT:MapReduce ジョブです。
CUPID:Spark または Mars ジョブです。
Algo_Task:機械学習ジョブです。
GRAPH:グラフコンピューティングジョブです。
[ジョブ終了ステータス]:フィルタリングされた範囲内のすべてのジョブのさまざまなメトリクスを、最終ステータス別にグループ化して表示します。
成功:ジョブが正常に実行されました。
失敗:ジョブが失敗しました。
キャンセル:ジョブがキャンセルされました。
Query をクリックして、各メトリクスの統計を表示します。
(任意) データ集計 の粒度を選択して、選択した時間次元に基づいて各メトリクスの統計を表示します。
パラメータ
説明
[時間別集計]
1 時間間隔でデータを集約します。現在の時間内に実行が終了したジョブの統計が表示されます。これがデフォルト設定です。
たとえば、現在の時刻が 2024 年 5 月 6 日の 14:00 の場合、時間別に集約すると、2024 年 5 月 6 日の 14:00 から 15:00 の間に終了したジョブの統計が表示されます。
[日単位]
1 日間隔でデータを集約します。現在の日に実行が終了したジョブの統計が表示されます。
たとえば、現在の日付が 2024 年 5 月 6 日の場合、日別に集約すると、2024 年 5 月 6 日の 00:00 から 2024 年 5 月 7 日の 00:00 の間に終了したジョブの統計が表示されます。
(任意) 比較期間 を選択して、過去の日付または時間からの履歴統計を表示します。
デフォルトは 比較なし です。オプションには、30日前、7 日前、前日 があります。たとえば、2024 年 5 月 6 日 14:00 の場合、「過去30日間」の比較データは 2024 年 4 月 6 日 14:00 の統計です。
メトリクス
[CU 使用量の推移] (単位:Core*H)
メトリクス
説明
[CPU 時間] (単位:Core*H)
選択したフィルター範囲内で完了したジョブによって消費された CPU 時間の数です。
1 CPU 時間は、1 つの CPU コアが 1 時間消費されることと定義されます。CPU 時間 = CPU コア数 × 期間です。
[メモリ時間] (単位:GB*H)
選択したフィルター範囲内で完了したジョブによって消費されたメモリ時間の量です。
1 メモリ時間は、1 GB のメモリが 1 時間消費されることと定義されます。メモリ時間 = メモリサイズ × 期間です。
[CPU 時間]/[メモリ使用量 TOP 10 分析]
CPU 時間またはメモリ時間の消費量で上位 10 件のジョブをランク付けします。また、選択したフィルター範囲内で合計または平均消費量が最も高い上位 10 件の Signature と ExtNodeId もリストします。
[ジョブの実行時間] (単位:秒)
メトリクス
説明
[平均値]
選択したフィルター範囲内で完了したジョブの平均実行時間です。
[最大値]
選択したフィルター範囲内で完了したジョブの最長実行時間です。
[最小値]
選択したフィルター範囲内で完了したジョブの最短実行時間です。
[分位数]
選択したフィルター範囲内で完了したジョブの特定の分位数 (1 パーセンタイル、5 パーセンタイル、10 パーセンタイル、50 パーセンタイル、90 パーセンタイル、95 パーセンタイル、99 パーセンタイルを含む) のジョブ実行時間です。
たとえば、99 パーセンタイルは、ジョブの 99% がこの実行時間内に終了したことを示します。
[ジョブランタイム TOP 10 分析]
選択したフィルター範囲内で、合計実行時間が最も長い上位 10 件のジョブ、および合計または平均実行時間が最も長い上位 10 件の Signature と ExtNodeId を表示します。
[ジョブ数の推移] (単位:カウント) :選択したフィルター範囲内で完了したジョブの数です。
[ジョブのスキャン量の推移] (単位:GB、チャートのスケールに基づいて自動調整) :選択したフィルター範囲内で完了したジョブによってスキャンされたデータの量です。
[CU 時間あたりのジョブスキャン量の推移] (単位:GB、チャートのスケールに基づいて自動調整) :選択したフィルター範囲内で、CU時間あたりにジョブによってスキャンされたデータの平均サイズです。1CU時間には、1つのCPUコアと 4 GB のメモリが含まれます。計算式
MAX(CPU-hour, CEILING(memory-hour/4))を使用して計算されます。
テナントレベルの INFORMATION_SCHEMA を使用して、前述のメトリクスの統計を収集することもできます。INFORMATION_SCHEMA の task_history テーブルには、操作によって生じたすべてのタスクインスタンスが含まれていますが、コンソールの[ジョブパフォーマンス観測]タブのメトリクスは、コンピューティングリソースを消費するジョブのみをカウントします。そのため、統計結果が異なる場合があります。
以下はサンプルクエリです。
SET odps.namespace.schema=TRUE;
SELECT to_char (end_time, 'yyyy-mm-dd hh'), -- ジョブが終了した時間
-- to_char (end_time, 'yyyy-mm-dd'), -- 日次粒度の場合、この行を使用して前の行を置き換えます。これはジョブが終了した日付を示します。
sum(cast(cost_cpu/100/3600 as DECIMAL(18,5) )) cost_cpuh, -- CPU 時間
sum(cast(cost_mem/1024/3600 as DECIMAL(18,5) )) cost_memh, -- メモリ時間
avg(datediff(end_time, start_time, 'ss')), -- 平均ジョブ実行時間
min(datediff(end_time, start_time, 'ss')), -- 最小ジョブ実行時間
max(datediff(end_time, start_time, 'ss')) -- 最大ジョブ実行時間
-- status, -- グループ化基準:status:ジョブステータス;project:task_catalog;ジョブタイプ:task_type。
FROM SYSTEM_CATALOG.INFORMATION_SCHEMA.tasks_history
WHERE ds>=to_char(date_add(getdate(),-7),'yyyymmdd') -- 必要に応じて他のフィルター条件を変更または追加します。
and task_type in ('SQL','SQLRT','LOT','CUPID','Algo_Task')
GROUP BY to_char (end_time, 'yyyy-mm-dd hh')
-- to_char (end_time, 'yyyy-mm-dd'), -- 日次粒度の場合、この行を使用して前の行を置き換えます。これはジョブが終了した日付を示します。
-- status, -- グループ化基準:status:ジョブステータス;project:task_catalog;ジョブタイプ:task_type。
order BY to_char (end_time, 'yyyy-mm-dd hh') ASC;
-- to_char (end_time, 'yyyy-mm-dd'); -- 日次粒度の場合、この行を使用して前の行を置き換えます。これはジョブが終了した日付を示します。よくある質問
質問1:
Q:グループ化後、チャートの凡例から一部のプロジェクトまたはクォータが欠落しているのはなぜですか?
A:これは、選択した期間内でプロジェクトまたはクォータのジョブ数がゼロの場合に発生します。
質問2:
Q:以前の期間の比較データが欠落しているのはなぜですか?
A:比較期間中にプロジェクトまたはクォータが存在しなかった場合、またはジョブがなかった場合、データが欠落している可能性があります。
関連トピック
リソース使用量を確認した後、必要に応じてジョブの実行計画とリソース構成を最適化してください。