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_schema
belgeler 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ı system
bir 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
true
ayarlayı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, olarakTrigger.Once
dö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
vesystem.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.