Kaynak kullanımı API'leri

Bu makalede Spark kaynak kullanımı bilgilerinin nasıl alınladığı açıklanmaktadır.

İzinler

Arayan kişinin öğe üzerinde "okuma" iznine sahip olması gerekir.

Gerekli devredilmiş yetkiler

Item.Read.All veya Item.ReadWrite.All veya aşağıdaki 3 gruptan biri (Spark uygulamasını tetikleyen öğeye göre)

  • Notebook.Read.All veya Notebook.ReadWrite.All
  • SparkJobDefinition.Read.All veya SparkJobDefinition.ReadWrite.All
  • Lakehouse.Read.All veya Lakehouse.ReadWrite.All

Microsoft Entra destekli kimlikler

Bu API, bu bölümde listelenen Microsoft kimliklerini destekler.

Kimlik Destek
Kullanıcı Evet
Hizmet sorumlusu ve yönetilen kimlikler Evet

Kaynak kullanımı zaman çizelgesini alma

Tüm kaynak kullanım bilgilerini zaman çizelgesi olarak alın.

Arayüz

“attemptId” ile

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

AttemptId'siz

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

İsteğe bağlı parametrelerle:

“attemptId” ile

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'siz

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 parametreleri

İsim İçinde Gerekli Türü Açıklama
çalışmaAlanıId yol Doğru string uuid Çalışma alanı kimliği.
öğeKimliği yol Doğru string uuid Not defterinin veya Spark iş tanımının veya Lakehouse'un öğe kimliği.
livyId yol Doğru dize uuid Livy oturum ID'si.
Uygulama Kimliği yol Doğru String Spark uygulama kimliği, örneğin application_1111111111111_0001.
attemptId yol Yanlış Int Bu uygulama kimliğinin deneme numarası. Belirtilmezse, son denemenin kimliği kullanılır.
iş grubu sorgu Yanlış String Yalnızca verilen jobGroups içindeki işlerin zaman çizelgesini listeleyin. Birden çok jobGroup şu şekilde belirtilebilir: ?jobGroup=1&jobGroup=2
iş limiti sorgu Yanlış Int Belirli bir zaman noktasında listelenecek maksimum iş sayısı.
yürütücüLimiti sorgu Yanlış Int Bir zaman noktasında listelenecek en fazla yürütücü sayısı.
yürütücüİşSınırı sorgu Yanlış Int Zaman noktası başına listelemek için en fazla yürütücü-iş bilgisi sayısı.
başlangıç / bitiş sorgu Yanlış uzun Zaman noktalarının alt ve üst sınırlarını listeleme.

İstek içeriği

Hiç kimse

Yanıtlar

İsim Türü Açıklama
200 Tamam ResourceUsageInfo İstek başarıyla tamamlandı
400 Hatalı İstek Geçersiz parametre. başlangıç bitişten büyüktür
403 Yasak Kullanıcının doğru izni yok
404 Bulunamadı - Öğe kimliği, uygulama kimliği ve Livy kimliği arasındaki uyuşmazlık
- Kaynak kullanım verilerini almak için çok erken

Örnekler

Numune isteği

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

Örnek yanıt

Durum kodu: 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 ] ] ] ] ]
    }
  }
}  

Tanımlar

ResourceUsageInfo

Nesne

İsim Türü Açıklama
resourceUsageApiVersion Int Kaynak kullanımı API'sinin sürümü.
süre uzun Verilen Spark uygulamasının milisaniye cinsinden süresi.
kapasiteAşıldı Boole 10 bin görev sınırı aşılmışsa true. True olduğunda, verilerdeki tüm özellikler boş olur.
boşta geçen süre uzun Verilen Spark uygulamasının boşta olduğu süre (milisaniye cinsinden).
çekirdek verimlilik iki katı Yürütücü çekirdeklerinin genel kullanım oranı.
veriler ResourceUsageData

ResourceUsageData

Nesne

İsim Türü Açıklama
Zaman damga -ları Uzun bir dizi
isPartials bool dizisi İlgili zaman damgasındaki sınır nedeniyle uygulanan tüm filtreler.
ayrılmış/boşta/runningCores bir çift dizisi İlgili zaman damgasında farklı durumlara sahip çekirdek sayısı.
vasiyetname uygulayıcıları ResourceUsageExecutor'ın iki boyutlu dizisi İlgili zaman anında her bir yürütücü için çekirdek ve görev bilgileri.
Işleri ResourceUsageJob'un iki boyutlu dizisi İlgili zaman damgasında iş başına görev bilgileri.
yürütücü görevler ResourceUsageExecutorJob'un iki boyutlu dizisi İlgili zamanaşımında her bir yürütücü için iş verileri.

ResourceUsageExecutor

Nesne

Her bir yürütücü için çekirdek ve görev bilgileri

İsim Türü Açıklama
yürütücü kimliği String Yürütücü Kimliği
çekirdek sayısı Int Yürütücüde çalışan çekirdek sayısı
görevSayısı Int Yürütücüdeki görevlerin sayısı

ResourceUsageJob

Nesne

İş başına görev bilgileri

İsim Türü Açıklama
jobId Int İş Kimliği
görevSayısı Int İşin çalışan görevlerinin sayısı.

ResourceUsageExecutorJob

Nesne

Yürütücü başına iş bilgileri

İsim Türü Açıklama
yürütücüKimlik String Yürütücü Kimliği
kaynakKullanımİşi ResourceUsageJob dizisi Yürütücüde çalışan görevleri olan işleri çalıştırma.

Kaynak kullanımı anlık görüntüsünü alma

Belirtilen zaman damgasına en yakın zaman noktasında kaynak kullanım bilgilerini alın.

Arayüz

“attemptId” ile

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

AttemptId'siz

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

İsteğe bağlı parametrelerle:

“attemptId” ile

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'siz

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 parametreleri

İsim İçinde Gerekli Türü Açıklama
çalışmaAlanıId yol Doğru dize uuid Çalışma alanı kimliği.
öğeKimliği yol Doğru Dize UUID Not defterinin veya Spark iş tanımının veya Lakehouse'un öğe kimliği.
livyId yol Doğru string uuid Livy oturum ID'si.
Uygulama Kimliği yol Doğru String Spark uygulama kimliği, örneğin application_1111111111111_0001.
attemptId yol Yanlış Int Bu uygulama kimliğinin deneme numarası. Belirtilmezse, son denemenin kimliği kullanılır.
Tarih damgası yol Doğru uzun Sorgulanacak belirli zaman damgası
iş grubu sorgu Yanlış String Yalnızca verilen jobGroups içindeki işlerin zaman çizelgesini listeleyin. Birden çok jobGroup şu şekilde belirtilebilir: ?jobGroup=1&jobGroup=2
iş limiti sorgu Yanlış Int Listelenecek en fazla iş sayısı
yürütücü sınırı sorgu Yanlış Int Listelenecek en fazla yürütücü sayısı

İstek içeriği

Hiç kimse

Yanıtlar

İsim Türü Açıklama
200 Tamam KaynakKullanımAnlıkGörüntüsü İstek başarıyla tamamlandı
403 Yasak Kullanıcının doğru izni yok
404 Bulunamadı - Öğe kimliği, uygulama kimliği ve Livy kimliği arasındaki uyuşmazlık
- Kaynak kullanım verilerini almak için çok erken

Örnekler

Numune isteği

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

Örnek yanıt

Durum kodu: 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 ] ] ] ] 
   }
}  

Tanımlar

KaynakKullanımAnlıkGörüntüsü

Nesne

İsim Türü Açıklama
queryTime uzun İstekte belirtilen zaman damgası
veriler KaynakKullanımıÖzetVerisi

KaynakKullanımıAnlıkGörüntüVerisi

Nesne

İsim Türü Açıklama
Tarih damgası uzun Verilen zaman damgasına en yakın zaman noktasının zaman damgası.
kısmiMi Boole Zaman damgasındaki bir sınırlama nedeniyle uygulanan herhangi bir filtre.
ayrılmış/boşta/runningCores iki katı Zaman damgasında farklı durumlara sahip çekirdek sayısı.
uygulayıcılar ResourceUsageExecutor dizisi Zaman damgasında her yürütücüye göre çekirdek ve görev bilgileri.
Işleri ResourceUsageJob dizisi Zaman damgasında iş başına görev bilgileri.
yürütücü görevler ResourceUsageExecutorJob dizisi Zaman damgasında yürütücü başına iş bilgileri.