Aracılığıyla paylaş


Unity Kataloğu kaynak kotalarınızı kullanımınızı izleme

Bu makalede, kaynak kotalarına tabi Unity Kataloğu güvenliği sağlanabilir nesneleri kullanımınızı nasıl izleyeceğiniz açıklanmaktadır.

Kullanımı izlemek için Unity Kataloğu kaynak kotaları API'lerini kullanabilirsiniz. Bazı sınırlar istek üzerine artırılsa da, diğerleri düzeltilir. Kesintileri önlemek için önceden plan yapın ve kaynak kotalarınızı aşmayı düşünüyorsanız Azure Databricks hesap ekibinize başvurun.

Unity Kataloğu kaynak kotaları nelerdir?

Unity Kataloğu, Unity Kataloğu tarafından yönetilen tüm güvenli kılınabilir nesnelerde kaynak kotalarını zorlar. Bu kotalar Kaynak sınırları'nda listelenir. Bu makalede Temiz Odalar, Delta Paylaşımı, Market ve Unity Kataloğu kotaları olarak tanımlanırlar.

Her kota, üst nesne (veya kapsam) başına bir dizi nesne olarak tanımlanır. Örneğin, şema başına 10.000 tablo veya meta veri deposu başına 1.000.000 tablo.

Kullanımınızı kaynak kotalarına göre sorgulama

Kaynak kotalarına göre kullanımı proaktif olarak izlemek için Unity Kataloğu Kaynak Kotaları REST API'lerini kullanın:

  • GetQuota , üst öğe başına alt nesne sayısı (örneğin, meta veri deposu başına tablo) olarak tanımlanan bir kota türü için kota kullanımını alır.
  • ListQuotasvarsayılan olarak sayfalandırılmış olarak hedef meta veri deposunun altındaki tüm kota değerlerini alır.

Her iki API de bilgileri aşağıdaki alanları içeren bir quota_info nesne biçiminde döndürür. GetQuota API'sini kullanarak istekte bulunurken de bu alanlardan bazılarını kullanırsınız:

  • parent_securable_type: Üst nesnenin türü. Örneğin, şema başına tablo sayısı parent_securable_type için , şeklindedir schema.

    Not

    Üst türün kayıtlı bir model olduğu kotalar için değerini olarak functionayarlayınparent_securable_type.

  • parent_full_name: Kota üst öğesinin tam adı. Örneğin, main.default şema. Üst öğe bir meta veri deposuysa, isteğinizde meta veri deposu kimliğini kullanın.

  • quota_name: Kotanın adı. Bu, tarafından -quotaekli alt nesnedir (tablo, şema, paylaşım vb.) Örneğin, table-quota.

  • quota_count: En son kullanım sayısı. Örneğin, 33 şema başına tablolar.

  • quota_limit: Kota sayısının hesaplandığı zamandaki kota sınırı değeri. Örneğin, 10000 şema başına tablolar.

  • last_refreshed_at: Kota sayısının en son yenilenme zamanı. Bu, Unix dönem zaman damgası olarak görüntülenir. Epoch Converter gibi çevrimiçi araçları kullanarak zaman damgasını okunabilir bir biçime dönüştürebilirsiniz.

Geçerli ListQuotas yanıt tüm sonuçları döndürmezse API yanıtta bir sayfa belirteci de döndürür.

API yetkilendirmesi ve kimlik doğrulaması

Kaynak Kotaları API'lerini yalnızca hesap yöneticileri çağırabilir.

API'leri çağıran hesap yöneticisi OAuth kullanıcıdan makineye (U2M) kimlik doğrulamasını (kullanıcılar veya gruplar için) veya OAuth makineden makineye (M2M) kimlik doğrulamasını (hesap yöneticisi bir hizmet sorumlusuysa) kullanmalıdır. Bkz. OAuth (OAuth U2M) kullanarak bir kullanıcı hesabıyla Azure Databricks'e erişimin kimliğini doğrulama veya OAuth (OAuth M2M) kullanarak hizmet sorumlusuyla Azure Databricks'e erişimin kimliğini doğrulama. Databricks tarafından oluşturulan kişisel erişim belirteçleri (PAT) de bir seçenektir, ancak önerilmez.

Belirli bir kota türü için kota kullanım değerlerini almak için GetQuota API'sini kullanma

GetQuota Bir alt-üst eşleştirme tarafından tanımlanan tek bir kaynak kotası için kullanım bilgilerini almak için API'yi kullanın.

Yöntem: GET

Yol: /unity-catalog/resource-quotas/{parent_securable_type}/{parent_full_name}/{quota_name}

Gövde parametreleri: Parametre açıklamaları için bkz . Kullanımınızı kaynak kotalarına göre sorgulama.

API başvurusu için bkz . GET /unity-catalog/resource-quotas/.

GetQuota sayımları, kota üst öğesi altında gerçekleştirilen son oluşturma işleminden sonra 30 dakika içinde doğru. Unity Kataloğu kota sayısını yalnızca kaynak oluşturma sırasında güncelleştirdiğinden, yalnızca silme işlemleri gerçekleştirildiyse, sayı güncel olmayabilir. Çağırma GetQuota , kota sayısının güncel olmaması durumunda yenilenmesini tetikler, ancak tetikleyici zaman uyumsuzdur ve ilk çağrıda yeni sayılar döndürülmeyebilir.

İstek örneği

Çalışma alanına bağlı meta veri deposunda katalogda main oluşturulan şemaların sayısını isteyen Python örneği:

import requests
headers = {'Authentication': 'Bearer <OAuthtoken>'}
r = requests.get('https://example-workspace.databricks.com/api/2.1/unity-catalog/resource-quotas/catalog/main/schema-quota', headers=headers)
print(r.text)

Aynı işlemi gösteren curl örneği:

$ curl -X GET -H "Authentication: Bearer $OAUTH_TOKEN" \
"https://example-workspace.databricks.com/api/2.1/unity-catalog/resource-quotas/catalog/main/schema-quota"

Yanıt örneği

Meta veri deposu başına 10.000 şema sınırına karşı 2691 şemaları gösteren yanıt:

{
  "quota_info": {
    "parent_securable_type": "CATALOG",
    "parent_full_name": "main",
    "quota_name": "schema-quota",
    "quota_count": 2691,
    "quota_limit": 10000,
    "last_refreshed_at": 1722559381517
  }
}

Bir meta veri deposundaki tüm kota türlerinin kullanım verilerini almak için ListQuotas API'sini kullanma

Meta veri deposundaki ListQuotas tüm kota türlerinin kullanım verilerini almak için API'yi kullanın.

Yöntem: GET

Yol: /unity-catalog/resource-quotas/all-resource-quotas

Gövde parametreleri:

  • max_results: Döndürülecek sonuç sayısı. En yüksek değer 500'dür. Varsayılan değer 100'dır.
  • page_token: Önceki istekten sonraki sonuç sayfasını getirmek için sayfa belirteci.

API başvurusu için bkz . GET /unity-catalog/resource-quotas/all-resource-quotas.

ListQuotas'nin aksineGetQuotas, sayımların güncelliğiyle ilgili SLA yoktur. Kota sayısı yenilemelerini tetiklemez. Maksimum doğruluk için API'yi GetQuota kullanın.

İstek örneği

Çalışma alanına eklenmiş meta veri deposundaki tüm nesneler için kota sayısı isteyen ve sayfa başına döndürülecek 5 sonuç belirten Python örneği:

import requests
headers = {'Authentication': 'Bearer <OAuthtoken>'}
next_page = None
max_results = 5
results = []

while True:
  payload = {'max_results': max_results, 'page_token': next_page}
  r = requests.get(
'https://example-workspace.databricks.com/api/2.1/unity-catalog/resource-quotas/all-resource-quotas', headers=headers, params=payload).json()
  results.extend(r["quotas"])
  if "next_page_token" not in r: break
  next_page = r["next_page_token"]

results

Aynı işlemi gösteren curl örneği:

$ curl -X GET -H "Authentication: Bearer $OAUTH_TOKEN" \
-d '{"max_results": 5}' "https://example-workspace.databricks.com/api/2.1/unity-catalog/resource-quotas/all-resource-quotas"

Yanıt örneği

5 kota sayısının bir sayfasını gösteren yanıt:

"quotas":[
   {
      "parent_securable_type":"CATALOG",
      "parent_full_name":"auto_maintenance",
      "quota_name":"schema-quota",
      "quota_count":15,
      "quota_limit":10000,
      "last_refreshed_at":1707272498713
   },
   {
      "parent_securable_type":"CATALOG",
      "parent_full_name":"demo_icecream",
      "quota_name":"schema-quota",
      "quota_count":3,
      "quota_limit":10000,
      "last_refreshed_at":1720789637102
   },
   {
      "parent_securable_type":"CATALOG",
      "parent_full_name":"primarycatalog",
      "quota_name":"schema-quota",
      "quota_count":2,
      "quota_limit":10000,
      "last_refreshed_at":1720829359520
   },
   {
      "parent_securable_type":"CATALOG",
      "parent_full_name":"shared_catalog_azure",
      "quota_name":"schema-quota",
      "quota_count":670,
      "quota_limit":10000,
      "last_refreshed_at":1722036080791
   },
   {
      "parent_securable_type":"CATALOG",
      "parent_full_name":"cat-test",
      "quota_name":"schema-quota",
      "quota_count":567,
      "quota_limit":10000,
      "last_refreshed_at":1704845201239
   }
],
"next_page_token":"eyJfX3R2IjoiMCIsInB0IjoiQ2F0YWxvZyIsInBpZCI6IjAwNTAyYTM1LWIzMGQtNDc4YS1hYTIwLTE5MDZkMGVmNzdiNiIsInJ0IjoiU2NoZW1hIn0="