Sistem tablolarıyla kullanımı izleme

Bu makalede Azure Databricks'teki sistem tabloları kavramı açıklanır ve sistem tabloları verilerinizden en iyi şekilde yararlanmak için kullanabileceğiniz kaynaklar vurgulanır.

Sistem tabloları nedir?

Sistem tabloları, hesabınızın katalogda bulunan işletimsel verilerinin Azure Databricks tarafından barındırılan system bir analiz deposu. Sistem tabloları, hesabınızdaki geçmiş gözlemlenebilirlik için kullanılabilir.

Not

ile ilgili system.information_schemabelgeler için bkz . Bilgi şeması.

Gereksinimler

  • Sistem tablolarına erişmek için çalışma alanınızın Unity Kataloğu için etkinleştirilmesi gerekir. Daha fazla bilgi için bkz . Sistem tablosu şemalarını etkinleştirme.

  • Sistem tabloları aşağıdaki bölgelerde kullanılamaz:

    • Azure Çin bölgeleri
    • Azure Kamu bölgeleri
    • Batı Hindistan
    • Batı İsviçre

Hangi sistem tabloları kullanılabilir?

Şu anda Azure Databricks aşağıdaki sistem tablolarını barındırıyor:

Table Açıklama Konum Akış desteği Ücretsiz saklama süresi Genel veya bölgesel verileri içerir
Denetim günlükleri (Genel Önizleme) Bölgenizdeki çalışma alanlarındaki tüm denetim olaylarının kayıtlarını içerir. Kullanılabilir denetim olaylarının listesi için bkz . Tanılama günlüğü başvurusu. system.access.audit Yes 365 gün Çalışma alanı düzeyindeki olaylar için bölgesel. Hesap düzeyindeki olaylar için genel.
Tablo kökeni (Genel Önizleme) Unity Kataloğu tablosunda veya yolundaki her okuma veya yazma olayı için bir kayıt içerir. system.access.table_lineage Yes 365 gün Bölgesel
Sütun kökeni (Genel Önizleme) Unity Kataloğu sütunundaki her okuma veya yazma olayı için bir kayıt içerir (ancak kaynağı olmayan olayları içermez). system.access.column_lineage Yes 365 gün Bölgesel
Faturalanabilir kullanım Hesabınızdaki tüm faturalanabilir kullanımın kayıtlarını içerir. Her kullanım kaydı, kaynağın faturalanabilir kullanımının saatlik bir toplamıdır. system.billing.usage Yes 365 gün Global
Fiyatlandırma SKU fiyatlandırmasının geçmiş günlüğü. SKU fiyatında her değişiklik olduğunda bir kayıt eklenir. system.billing.list_prices Hayır Sınırsız Global
Kümeler (Genel Önizleme) Herhangi bir küme için zaman içindeki işlem yapılandırmalarının tam geçmişini içeren yavaş değişen boyut tablosu. system.compute.clusters Yes Yok Bölgesel
Düğüm zaman çizelgesi (Genel Önizleme) Tüm amaçlı ve iş işlem kaynaklarınızın kullanım ölçümlerini yakalar. system.compute.node_timeline Yes 30 gün Bölgesel
Düğüm türleri (Genel Önizleme) Şu anda kullanılabilir düğüm türlerini temel donanım bilgileriyle yakalar. system.compute.node_types Hayır YOK Bölgesel
SQL ambarı olayları (Genel Önizleme) SQL ambarlarıyla ilgili olayları yakalar. Örneğin, başlatma, durdurma, çalıştırma, ölçeği artırma ve azaltma. system.compute.warehouse_events Yes 365 gün Bölgesel
İşler (Genel Önizleme) Hesapta oluşturulan tüm işleri izler. system.lakeflow.jobs Yes 365 gün Bölgesel
İş görevleri (Genel Önizleme) Hesapta çalışan tüm iş görevlerini izler. system.lakeflow.job_tasks Yes 365 gün Bölgesel
İş çalıştırma zaman çizelgesi (Genel Önizleme) İş çalıştırmalarının başlangıç ve bitiş saatlerini izler. system.lakeflow.

job_run_timeline
Yes 365 gün Bölgesel
İş görevi zaman çizelgesi (Genel Önizleme) İş görevi çalıştırmaları için kullanılan başlangıç ve bitiş saatlerini ve işlem kaynaklarını izler. system.lakeflow.

job_task_run_timeline
Yes 365 gün Bölgesel
Market hunisi olayları (Genel Önizleme) Dökümleriniz için tüketici izlenimi ve huni verilerini içerir. system.marketplace.listing_

funnel_events
Yes 365 gün Bölgesel
Market listeleme erişimi (Genel Önizleme) Tamamlanmış istek verileri için tüketici bilgilerini içerir veya dökümlerinizdeki veri olaylarını alır. system.marketplace.listing_

access_events
Yes 365 gün Bölgesel
Tahmine dayalı iyileştirme (Genel Önizleme) Tahmine dayalı iyileştirme özelliğinin işlem geçmişini izler. system.storage.predictive_

optimization_operations_history
Hayır 180 gün Bölgesel
Databricks Yardımcısı olayları (Genel Önizleme) Databricks Yardımcısı'na gönderilen kullanıcı iletilerini izler. system.access.assistant_events Hayır 365 gün Bölgesel
Sorgu geçmişi (Genel Önizleme) SQL ambarlarında çalıştırılacak tüm sorguların kayıtlarını yakalar. system.query.history Yes 90 gün Bölgesel
Oda olaylarını temizleme (Genel Önizleme) Temiz odalarla ilgili olayları yakalar. system.access.clean_room_events Yes 365 gün Bölgesel
Uç nokta kullanımına hizmet veren model (Genel Önizleme) Uç noktayı ve yanıtlarını sunan bir modele yapılan her istek için belirteç sayılarını yakalar. system.serving.endpoint_usage Yes 90 gün Bölgesel
Uç nokta verilerini sunan model (Genel Önizleme) Hizmet veren bir model uç noktasında sunulan her dış model için meta verileri depolayan yavaş değişen boyut tablosu. system.serving.served_entities Yes 365 gün Bölgesel

Faturalanabilir kullanım ve fiyatlandırma tabloları ücretsizdir. Genel Önizleme'deki tablolar da önizleme sırasında ücretsiz olarak kullanılabilir ancak gelecekte ücretlendirilebilir.

Not

Hesabınızda yukarıda listelenenlerin yanı sıra başka sistem tabloları da görebilirsiniz. Bu tablolar şu anda Özel Önizleme aşamasındadır ve varsayılan olarak boş durumdadır. Bu tablolardan herhangi birini kullanmak istiyorsanız lütfen Databricks hesap ekibinize ulaşın.

Sistem tablosu şemalarını etkinleştirme

Sistem tabloları Unity Kataloğu tarafından yönetildiğinden, sistem tablolarını etkinleştirmek ve bunlara erişmek için hesabınızda en az bir Unity Kataloğu etkin çalışma alanı olmalıdır. Sistem tabloları hesabınızdaki tüm çalışma alanlarındaki verileri içerir, ancak bunlara yalnızca Unity Kataloğu'nu etkinleştiren bir çalışma alanından erişilebilir.

Sistem tabloları şema düzeyinde etkinleştirilir. Bir sistem şemasını etkinleştirirseniz, bu şemadaki tüm tabloları etkinleştirirsiniz. Yeni şemalar yayımlandığında, hesap yöneticisinin şemayı el ile etkinleştirmesi gerekir.

Sistem tabloları bir hesap yöneticisi tarafından etkinleştirilmelidir. SystemSchemas API'sini kullanarak sistem tablolarını etkinleştirebilirsiniz.

Not

Şema billing varsayılan olarak etkindir. Diğer şemalar el ile etkinleştirilmelidir.

Kullanılabilir sistem şemalarını listeleme

Kullanılabilir sistem şemalarını listelemek için aşağıdaki curl komutunu kullanın:

curl -v -X GET -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas"

Aşağıda komutun örnek çıkışı verilmiştir GET :

{"schemas":[{"schema":"access","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"billing","state":"<AVAILABLE OR EnableCompleted>"},{"schema":"information_schema","state":"<AVAILABLE OR EnableCompleted>"}]}

state: AVAILABLE: Sistem şeması kullanılabilir ancak henüz etkinleştirilmemiştir.

state: EnableCompleted: Sistem şemasını etkinleştirdiniz ve Bu şema Katalog Gezgini'nde görünür.

Sistem şemasını etkinleştirme

Sistem şemasını etkinleştirmek için aşağıdaki curl komutunu kullanın:

curl -v -X PUT -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Sistem şeması başarıyla etkinleştirilirse sonuç kodu 200 döndürülür.

Bir sistem şemasını yeniden etkinleştirmeye çalışırsanız, aşağıdakiler döndürülür: "error_code":"SCHEMA_ALREADY_EXISTS","message":"Schema <schema-name> already exists".

Sistem şemasını devre dışı bırakma

Sistem şemasını devre dışı bırakmak için aşağıdaki curl komutunu kullanın:

curl -v -X DELETE -H "Authorization: Bearer <PAT Token>" "https://adb-<xxx>.azuredatabricks.net/api/2.0/unity-catalog/metastores/<metastore-id>/systemschemas/<SCHEMA_NAME>"

Sistem tablolarına erişim izni verme

Sistem tablolarına erişim Unity Kataloğu'na tabidir. Hiçbir kullanıcının varsayılan olarak bu sistem şemalarına erişimi yoktur. Erişim vermek için hem meta veri deposu yöneticisi hem de hesap yöneticisi olan bir kullanıcının sistem şemaları üzerinde ve SELECT izinleri vermesi USE gerekir. Bkz . Unity Kataloğu'nda ayrıcalıkları yönetme.

Sistem tabloları salt okunur durumdadır ve değiştirilemez.

Not

Hesabınız 9 Kasım 2023'den sonra oluşturulduysa, varsayılan olarak bir meta veri deposu yöneticiniz olmayabilir. Daha fazla bilgi için bkz . Unity Kataloğu'nu ayarlama ve yönetme.

Sistem tabloları hesabınızdaki tüm çalışma alanları için veri içeriyor mu?

Sistem tabloları, hesabınızdaki aynı bulut bölgesinde dağıtılan tüm çalışma alanları için işletimsel veriler içerir. Faturalama sistemi tabloları, hesap genelinde veriler içerir.

Sistem tablolarına yalnızca Unity Kataloğu çalışma alanı üzerinden erişilebilir olsa da, tablolar hesabınızdaki Unity Kataloğu olmayan çalışma alanlarının işletimsel verilerini de içerir.

Sistem tablosu verileri nerede depolanır?

Hesabınızın sistem tablosu verileri, meta veri deponuzla aynı bölgede bulunan Azure Databricks tarafından barındırılan bir depolama hesabında depolanır. Delta Sharing kullanılarak veriler sizinle güvenli bir şekilde paylaşılır.

Her tablonun ücretsiz veri saklama süresi vardır. Saklama süresini uzatma hakkında bilgi için Azure Databricks hesap ekibinize başvurun.

Sistem tabloları Katalog Gezgini'nde nerede bulunur?

Hesabınızdaki sistem tabloları, her Unity Kataloğu meta veri deposunda bulunan adlı systembir katalogda bulunur. Katalogda system ve gibi access billing sistem tablolarını içeren şemaları görürsünüz.

Akış sistemi tabloları için dikkat edilmesi gerekenler

Azure Databricks, sistem tablosu verilerini müşterilerle paylaşmak için Delta Sharing'i kullanır. Delta Sharing ile akış yaparken aşağıdaki noktalara dikkat edin:

  • Sistem tablolarıyla akış kullanıyorsanız seçeneğini olarak trueayarlayınskipChangeCommits. Bu, akış işinin sistem tablolarındaki silmelerden kesintiye uğramamasını sağlar. Bkz. Güncelleştirmeleri ve silmeleri yoksayma.
  • Trigger.AvailableNow Delta Sharing akışında desteklenmez. bu, olarak Trigger.Oncedönüştürülür.

Akış işinizde bir tetikleyici kullanıyorsanız ve bunun en son sistem tablosu sürümüne yetişmediğini fark ederseniz Databricks işin zamanlanmış sıklığını artırmanızı önerir.

Akış sistemi tablolarından artımlı değişiklikleri okuma

spark.readStream.option("skipChangeCommits", "true").table("system.billing.usage")

Bilinen sorunlar

  • Şu anda gerçek zamanlı izleme desteği bulunmuyor. Veriler gün boyunca güncelleştirilir. Son olay için bir günlük görmüyorsanız daha sonra tekrar kontrol edin.

  • Sistem tablolarını etkinleştirmek için sistem tabloları Blob depolama uç noktasına ağ erişimi vermeniz gerekebilir. Her bölgenin sistem tablolarının depolama uç noktasının listesini görüntülemek için bkz . Depolama uç noktası IP adresleri.

  • sistem şemaları system.operational_data ve system.lineage kullanım dışıdır ve boş tablolar içerir.

  • Sistem __internal_logging tablosu şeması, çıkarım tablolarını kullanarak yük günlüğünü desteklemek için kullanılır. Bu şema hesap yöneticileri tarafından görülebilir, ancak etkinleştirilemez ve müşteri iş akışları için kullanılmamalıdır.