Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bazen federasyon tabloları olarak da adlandırılan yabancı tablolar, Unity Kataloğu kullanılarak bir yabancı kataloğun parçası olarak kaydedilen tablolardır. Yabancı tablolar dış sistemler tarafından yönetilen veriler ve meta veriler içerir ve Unity Kataloğu bu tabloları sorgulamak için veri idaresi ekler.
Azure Databricks, yabancı tabloları kaydetmek için aşağıdaki yöntemleri destekler:
- Sorgu federasyonu , PostgreSQL ve MySQL gibi dış veri sistemlerine federasyon sağlamak için güvenli JDBC bağlantıları kullanır.
- Katalog federasyonu , verileri doğrudan dosya depolama alanında sorgulamak için Hive Meta Veri Deposu veya Snowflake Horizon Kataloğu gibi dış katalogları bağlar.
Important
Eski Apache Spark ve Azure Databricks iş yükleriyle geriye dönük uyumluluk için, federasyon halindeki Hive meta veri deposundaki yabancı tablolar, Hive meta veri deposundan meta verileri döndürür, bu tabloların Hive tarafından yönetilen mi yoksa Hive dış tablosu mu olduklarını da içerecek şekilde.
Neden yabancı tablo kullanmalısınız?
Yabancı tablolar, Azure Databricks'i mevcut veri sistemleriyle tümleştirirken veya eski sistemlerden geçiş yaparken esneklik sağlar.
Birçok yabancı tablo, yukarı akış ETL iş akışları için veri geçişi veya kod yeniden düzenleme gerektirmeden hızlı bir çözüm sağladığından, Azure Databricks tarafından yönetilmeyen verilere doğrudan erişim için geçici bir çözüm görevi görür. Databricks, üretim iş yüklerini yönlendiren veya sık sık sorgulanan veri kümelerinin Unity Kataloğu yönetilen tablolarına geçirilmesini önerir. Yönetilen tablolar en iyi performansı sağlar ve birçok yerleşik iyileştirmeye sahiptir. Bkz. Harici bir tabloyu yönetilen Unity Kataloğu tablosuna dönüştürme.
Sorgu federasyonu, Lakeflow Connect tarafından desteklenmeyen dış veri sistemlerinden veri yüklemek için ücretsiz bir çözüm sağlar. Databricks, yabancı tabloları Unity Kataloğu'na çoğaltmak için materyalize edilmiş görünümlerin kullanılmasını önerir. Bkz . Gerçekleştirilmiş görünümlerle yabancı tablolardan veri yükleme.
Yabancı tablolar oluşturma veya yabancı tablolara veri yazma
Yeterli ayrıcalığınız varsa ve çalışma alanınız bir iç federasyon Hive meta deposuyla yapılandırılmışsa, bu iç federasyon Hive meta deposu tarafından yedeklenen yabancı tablolar oluşturabilir veya bu tablolara yazabilirsiniz. Dış federasyon Hive meta veri deposu ve Lakehouse Federasyonu aracılığıyla erişilen tüm yabancı tablolar salt okunur durumdadır.
Yabancı tablolar salt okunur olsa da, Tarafından Güncellenen alanı en son meta veri yenilemesini başlatan kullanıcıyı gösterir. Azure Databricks, meta verilerin eski olduğunu algıladığında sorgular sırasında yabancı tablo meta verilerini otomatik olarak yeniler. Sonuç olarak, Güncelleştirilen alanı, kullanıcının temel alınan verileri değiştirmemesine rağmen sorguyu kimin çalıştırdığını görüntüler current_user .
Azure Databricks, yabancı tablolara yazma işlemleri için meta verileri, verileri veya semantiği yönetmez. Yabancı tablolar Delta Lake veya Apache Iceberg gibi ACID uyumlu bir biçimle desteklenebilir, ancak yabancı tablolar Unity Kataloğu tarafından yönetilen tabloların işlem garantilerini sağlamaz.
Sorgu performansı, gelişmiş yazma hızı, veri atlama ve yalnızca meta veri sorguları için Azure Databricks iyileştirmelerinin çoğu Unity Kataloğu gerektirir. Databricks, gecikme ve maliyet farklarını değerlendirmek için en son Databricks Runtime sürümünü kullanarak yabancı tablolar ile Unity Kataloğu yönetilen tabloları arasındaki okuma ve yazma sorgu performansını karşılaştırmanızı önerir. Bkz. Azure Databricks'te Delta Lake ve Apache Iceberg için Unity Kataloğu tarafından yönetilen tablolar.