次の方法で共有


リソース使用 API

この記事では、Spark リソースの使用状況情報を取得する方法について説明します。

権限

呼び出し元には、項目に対する "読み取り" アクセス許可が必要です。

必要な委任されたスコープ

Item.Read.All または Item.ReadWrite.All、または次の 3 つのグループのいずれか (Spark アプリケーションをトリガーした項目に応じて)

  • Notebook.Read.All または Notebook.ReadWrite.All
  • SparkJobDefinition.Read.All または SparkJobDefinition.ReadWrite.All
  • Lakehouse.Read.All または Lakehouse.ReadWrite.All

Microsoft Entra でサポートされている ID

この API では、このセクションに記載されている Microsoft ID がサポートされています。

アイデンティティ 支援
ユーザー イエス
サービス プリンシパルマネージド ID イエス

リソースの使用状況のタイムラインを取得する

すべてのリソース使用状況情報をタイムラインとして取得します。

インターフェイス

attemptId を使用する

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/resourceUsage 

attemptId を使用しない

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/resourceUsage

省略可能なパラメーターを使用します。

attemptId を使用する

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/resourceUsage?jobGroup={jobGroup}&jobLimit={jobLimit}&executorLimit={executorLimit}&executorJobLimit={executorJobLimit}&start={start}&end={end}

attemptId を使用しない

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/resourceUsage?jobGroup={jobGroup}&jobLimit={jobLimit}&executorLimit={executorLimit}&executorJobLimit={executorJobLimit}&start={start}&end={end}

URI パラメーター

名前 必須 タイプ 説明
ワークスペースID 正しい string uuid ワークスペース ID。
アイテムID 正しい string uuid ノートブックまたは Spark ジョブ定義またはレイクハウスの項目 ID。
livyId 正しい string uuid Livy セッション ID。
アプリID 正しい ひも Spark アプリケーションの ID(例: application_1111111111111_0001)。
attemptId いいえ 整数 (int) そのアプリケーション ID の試行 ID。 指定しない場合は、最後の試行の ID が使用されます。
ジョブグループ 問い合わせ いいえ ひも 指定された jobGroups 内のジョブのタイムラインのみを一覧表示します。 複数の jobGroup を次のように指定できます: ?jobGroup=1>jobGroup=2
jobLimit 問い合わせ いいえ 整数 (int) タイム ポイントごとに一覧表示するジョブの最大数。
実行者の制限 問い合わせ いいえ 整数 (int) タイム ポイントごとに一覧表示する Executor の最大数。
エグゼキュータージョブの制限 問い合わせ いいえ 整数 (int) 時間ポイントごとに一覧表示する Executor ジョブ情報の最大数。
開始/終了 問い合わせ いいえ 長い 時間点の下限と上限をリスト化します。

リクエストの本文

無し

応答

名前 タイプ 説明
200 OK(正常に処理されました) ResourceUsageInfo 要求が正常に完了しました
400 無効な要求 パラメーターが無効です。 start が end より大きい
403 許可されていません ユーザーが正しいアクセス許可を持っていない
404 見つかりません - 項目 ID、アプリケーション ID、Livy ID が一致しません
- リソース使用状況データを取得するには早すぎる

例示

サンプルリクエスト

GET https://api.fabric.microsoft.com/v1/workspaces/aaaabbbb-0000-cccc-1111-dddd2222eeee/notebooks/11bb11bb-cc22-dd33-ee44-55ff55ff55ff/livySessions/0a0a0a0a-1111-bbbb-2222-3c3c3c3c3c3c/applications/application_11111111111110001/1/resourceUsage?start=1745906291774&end=1745906293676

サンプル応答

状態コード:200

{ 
  { 
   "resourceUsageApiVersion" : 2, 
   "duration" : 131903, 
   "capacityExceeded" : false, 
   "idleTime" : 120869, 
   "coreEfficiency" : 0.08070419171664026, 
   "data" : { 
      "timestamps" : [ 1745906291774, 1745906292471, 1745906292731], 
      "isPartials" : [ false, false, false ], 
      "allocatedCores" : [ 8.0, 8.0, 8.0 ], 
      "idleCores" : [ 0.0, 0.0, 1.0 ], 
      "runningCores" : [ 8.0, 8.0, 7.0 ], 
      "executors" : [ [ [ "1", 8.0, 12 ] ], [ [ "1", 8.0, 9 ] ], [ [ "1", 7.0, 7 ] ] ], 
      "jobs" : [ [ [ 9, 12 ] ], [ [ 9, 9 ] ], [ [ 9, 7 ] ] ], 
      "executorJobs" : [ [ [ "1", [ [ 9, 12 ] ] ] ], [ [ "1", [ [ 9, 9 ] ] ] ], [ [ "1", [ [ 9, 7 ] ] ] ] ]
    }
  }
}  

定義

ResourceUsageInfo

オブジェクト

名前 タイプ 説明
リソース使用APIバージョン 整数 (int) リソース使用状況 API のバージョン。
期間 長い 指定された Spark アプリケーションの期間 (ミリ秒単位)。
容量超過 ブール (bool) True の場合は、10,000 個のタスクの制限を超えています。 true の場合、データ内のすべてのプロパティが空になります。
idleTime 長い 指定された Spark アプリケーションがアイドル状態の時間 (ミリ秒単位)。
コア効率 ダブル Executor コアの概要使用率。
データ ResourceUsageData

ResourceUsageData

オブジェクト

名前 タイプ 説明
タイムスタンプ long の配列
isPartials ブール値の配列 対応するタイムスタンプに制限があるために適用されるフィルター。
割り当て済み/アイドル/稼働中コア double の配列 対応するタイムスタンプで状態が異なるコアの数。
執行者 ResourceUsageExecutor の 2 次元配列 対応するタイムスタンプにおける、エグゼキュータごとのコアとタスクの情報。
ジョブ ResourceUsageJob の 2 次元配列 ジョブごとのタスク情報 (対応するタイムスタンプ)。
実行タスク ResourceUsageExecutorJob の 2 次元配列 各実行者のジョブ情報(対応するタイムスタンプで)。

ResourceUsageExecutor

オブジェクト

Executor ごとのコアとタスクの情報

名前 タイプ 説明
エグゼキューターID ひも 実行者ID
コアカウント 整数 (int) Executor で実行中のコアの数
タスク数 整数 (int) Executor で実行中のタスクの数

ResourceUsageJob

オブジェクト

ジョブごとのタスク情報

名前 タイプ 説明
jobId 整数 (int) 職務 ID
タスク数 整数 (int) ジョブの実行中のタスクの数。

リソース使用量実行ジョブ

オブジェクト

Executor ごとのジョブ情報

名前 タイプ 説明
実行者ID ひも 実行者ID
リソース使用ジョブ ResourceUsageJob の配列 Executor でタスクが実行されているジョブの実行。

リソース使用量のスナップショットを取得する

特定のタイムスタンプに最も近い時点でリソース使用状況情報を取得します。

インターフェイス

attemptId を使用する

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/resourceUsage/{timestamp}

attemptId を使用しない

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/resourceUsage/{timestamp}

省略可能なパラメーターを使用します。

attemptId を使用する

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/{attemptId}/resourceUsage/{timestamp}?jobGroup={jobGroup}&jobLimit={jobLimit}&executorLimit={executorLimit}

attemptId を使用しない

GET https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/notebooks|sparkJobDefinitions|lakehouses/{itemId}/livySessions/{livyId}/applications/{appId}/resourceUsage/{timestamp}?jobGroup={jobGroup}&jobLimit={jobLimit}&executorLimit={executorLimit}

URI パラメーター

名前 必須 タイプ 説明
ワークスペースID 正しい 文字列 UUID ワークスペース ID。
アイテムID 正しい string uuid ノートブックまたは Spark ジョブ定義またはレイクハウスの項目 ID。
livyId 正しい string uuid Livy セッション ID。
アプリID 正しい ひも 例として、application_1111111111111_0001 のようなSpark アプリケーション ID。
attemptId いいえ 整数 (int) そのアプリケーション ID の試行 ID。 指定しない場合は、最後の試行の ID が使用されます。
タイムスタンプ(時刻印) 正しい 長い クエリする特定のタイムスタンプ
職務グループ 問い合わせ いいえ ひも 指定された jobGroups 内のジョブのタイムラインのみを一覧表示します。 複数の jobGroup を次のように指定できます: ?jobGroup=1>jobGroup=2
jobLimit 問い合わせ いいえ 整数 (int) 一覧表示するジョブの最大数
実行者制限 問い合わせ いいえ 整数 (int) 一覧表示する Executor の最大数

リクエストの本文

無し

応答

名前 タイプ 説明
200 OK(正常に処理されました) リソース使用状況スナップショット 要求が正常に完了しました
403 許可されていません ユーザーが正しいアクセス許可を持っていない
404 見つかりません - 項目 ID、アプリケーション ID、Livy ID が一致しません
- リソース使用状況データを取得するには早すぎる

例示

サンプルリクエスト

GET https://api.fabric.microsoft.com/v1/workspaces/aaaabbbb-0000-cccc-1111-dddd2222eeee/notebooks/11bb11bb-cc22-dd33-ee44-55ff55ff55ff/livySessions/0a0a0a0a-1111-bbbb-2222-3c3c3c3c3c3c/applications/application_1111111111111_0001/1/resourceUsage/1745906291774

サンプル応答

状態コード:200

{ 
   "queryTime" : 1745906291774, 
   "data" : { 
   "timestamp" : 1745906291774, 
   "isPartial" : false, 
   "allocatedCores" : 8.0, 
   "idleCores" : 0.0, 
   "runningCores" : 8.0, 
   "executors" : [ [ "1", 8.0, 12 ] ], 
   "jobs" : [ [ 9, 12 ] ], 
   "executorJobs" : [ [ "1", [ [ 9, 12 ] ] ] ] 
   }
}  

定義

リソース使用状況スナップショット

オブジェクト

名前 タイプ 説明
queryTime 長い 要求で指定されたタイムスタンプ
データ リソース使用状況スナップショットデータ

リソース使用量スナップショットデータ (ResourceUsageSnapshotData)

オブジェクト

名前 タイプ 説明
タイムスタンプ(時刻印) 長い 指定されたタイムスタンプに最も近いタイム ポイントのタイムスタンプ。
isPartial ブール (bool) タイムスタンプの制限により適用されるフィルター。
割り当て済み/アイドル中/稼働中のコア ダブル タイムスタンプの状態が異なるコアの数。
実行者 ResourceUsageExecutor の配列 タイムスタンプにおける各Executorのコアとタスク情報。
ジョブ ResourceUsageJob の配列 タイムスタンプ時点でのジョブごとのタスク情報。
エグゼキュータージョブ ResourceUsageExecutorJob の配列 Executorごとのジョブ情報(タイムスタンプ付き)