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.
Important
Unity Kataloğu tarafından yönetilen Iceberg tabloları, Databricks Runtime 16.4 LTS ve üzeri sürümlerin Genel Önizleme sürümünde kullanılabilir. Yabancı Buzdağı tabloları da Databricks Runtime 16.4 LTS ve üzerinde Genel Önizleme aşamasındadır.
Iceberg v3 özellikleri, Databricks Runtime 17.3 ve üzeri sürümlerde Beta sürümünde kullanılabilir. Bkz. Apache Iceberg v3 özelliklerini kullanma.
Apache Iceberg , analiz iş yükleri için açık kaynak bir tablo biçimidir. Şema evrimi, zaman yolculuğu ve gizli bölümleme gibi özellikleri destekler. Delta Lake gibi Iceberg de nesne depolamada depolanan veriler üzerinde ACID işlemlerini etkinleştiren bir soyutlama katmanı sağlar. Azure Databricks, Apache Parquet dosya biçimini kullanan Iceberg tablolarını destekler. Iceberg, her tablo değişikliği için yeni meta veri dosyaları yazarak bölünmezliği ve tutarlılığı korur.
Iceberg kataloğu, Iceberg tablo mimarisinin en üst düzey katmanıdır. Tabloları oluşturma, bırakma ve yeniden adlandırma gibi işlemleri işler. Asıl sorumluluğu, bir tablo yüklendiğinde geçerli meta verileri sağlamaktır. Azure Databricks tarafından yönetilen Iceberg tabloları desteklenir:
- Unity Kataloğu
- AWS Glue, Hive MetaStore veya Snowflake Horizon Kataloğu gibi yabancı kataloglar
Azure Databricks'teki tüm Iceberg tabloları açık Iceberg tablo biçimi belirtimini izler. Iceberg tablosu spesifikasyonuna bakın.
Unity Kataloğu'nda Buzdağı tabloları oluşturma
Unity Kataloğu'nda oluşturulan buzdağı tabloları yönetilen Iceberg tablolarıdır. Şu tabloları kullanarak oluşturabilirsiniz:
- Databricks Runtime veya Databricks SQL
- Apache Spark, Flink, Trino veya Kafka gibi Iceberg REST Katalog API'sini destekleyen dış Iceberg uyumlu altyapılar. Bkz. Apache Iceberg istemcilerinden Azure Databricks tablolarına erişme.
Yönetilen Iceberg tabloları, Azure Databricks platform özellikleriyle tamamen tümleşiktir. Unity Kataloğu, bu tablolarda anlık görüntü süre sonu ve dosya sıkıştırma gibi yaşam döngüsü görevlerini yönetir. Yönetilen Iceberg tabloları, sorgu performansını geliştiren sıvı kümelemeyi de destekler. Tahmine dayalı iyileştirme , depolama maliyetlerini azaltmak ve sorgu hızını artırmak için bu görevleri otomatikleştirir. Databricks, Unity Kataloğu'nu okumak ve yazmak için Iceberg istemcilerinin 1.9.2 ve üzerini kullanmanızı önerir.
Diğer kataloglar tarafından yönetilen Iceberg tablolarını okuma
Yabancı Iceberg tablosu, Unity Kataloğu dışındaki bir katalog tarafından yönetilen bir Iceberg tablosudur. Dış katalog tablonun geçerli meta verilerini depolar. Azure Databricks, meta verileri almak ve nesne depolamadan tabloyu okumak için Lakehouse Federasyonu'nu kullanır.
Yabancı Buzdağı tabloları Azure Databricks'te salt okunur durumdadır ve sınırlı platform desteğine sahiptir.
Dış sistemleri kullanarak Iceberg tablolarına erişme
Unity Kataloğu'ndaki tüm Iceberg tablolarına Iceberg REST Kataloğu API'sini kullanarak erişebilirsiniz. Bu açık API, farklı diller ve platformlarda dış Iceberg altyapılarından okuma ve yazma işlemlerini destekler. Bkz. Apache Iceberg istemcilerinden Azure Databricks tablolarına erişme.
REST Kataloğu, temel depolamaya erişim sağlamak için dış motorlara geçici kimlik bilgileri sunan kimlik bilgisi sağlama hizmetini destekler. Daha fazla bilgi için bkz. Dış sistem erişimi için Unity Kataloğu kimlik bilgileri sağlanması.
Buzdağı tablo sınırlamaları
Aşağıdaki sınırlamalar Azure Databricks'teki Iceberg tabloları için geçerlidir ve değiştirilebilir:
- Iceberg tabloları yalnızca Apache Parquet dosya biçimini destekler.
- Azure Databricks Iceberg belirtiminin 1, 2 ve 3 sürümlerini destekler.
- v3'e özgü sınırlamalar için bkz. Sınırlamalar.
- Iceberg v2 konum silmeleri ve eşitlik tabanlı silmeler desteklenmez. Bunun yerine Azure Databricks, satır düzeyinde silme işlemleri için Iceberg v3 silme vektörlerini destekler.
- Dallanma ve etiketleme desteklenmez. Yabancı Iceberg tablolarını okurken yalnızca ana dala erişilebilir.
- Bölümleme:
- Yalnızca dış Iceberg motorlarından etkileşim kurulduğunda, yönetilen Iceberg tablolarında bölüm evrimi desteklenir.
- Yabancı Iceberg tabloları bölümlendirme evrimini desteklemez.
- Türe göre
BINARYbölümleme desteklenmez.
- Aşağıdaki veri türleri desteklenmez:
UUIDFixed(L)TIME- Gerekli alanlarla iç içe
STRUCT
- Yönetilen Iceberg tabloları birincil anahtar veya yabancı anahtar kısıtlamalarını desteklemez.
Yönetilen Iceberg tablolarının sınırlamaları
Aşağıdaki sınırlamalar özellikle yönetilen Iceberg tabloları için geçerlidir:
- Satır filtreleri ve sütun maskeleri desteklenmez.
- Vektör araması desteklenmez.
- Iceberg değişiklik veri yayını desteklemez. Sonuç olarak, yönetilen Iceberg tabloları aşağıdakiler için kaynak olarak okunurken artımlı işleme desteklenmez:
- Gerçekleştirilmiş görünümler ve akış tabloları
- Veri profili oluşturma
- Çevrimiçi tablolar
- Lakebase
- Veri sınıflandırma
- Yönetilen Iceberg tabloları yalnızca tablo bakımı için tahmine dayalı iyileştirme etkinleştirildiğinde oluşturulabilir.
- Aşağıdaki tablo özellikleri Unity Kataloğu tarafından yönetilir ve el ile ayarlanamaz:
write.location-provider.implwrite.data.pathwrite.metadata.pathwrite.format.defaultwrite.delete.format.default
- Tablo sıkıştırmasını değiştirmek için sıkıştırma codec'i desteklenmez. Tüm tablolar varsayılan olarak Zstd kullanır.
- İfadelere göre bölümleme (örneğin,
years(),months()days(), ,hours()),bucket()desteklenmez.
Yurtdışı Buzdağı tablo sınırlamaları
Aşağıdaki sınırlamalar özellikle yabancı Iceberg tabloları için geçerlidir:
- Zaman yolculuğu yalnızca daha önce Azure Databricks'te okunmuş olan Iceberg anlık görüntüleri (bir deyimin yürütüldüğü
SELECTanlık görüntüler) için desteklenir. - Iceberg bölümleme için demet dönüştürme işlevlerinin kullanılması, koşullu filtreler kullanıldığında sorgu performansını düşürebilir.
- Bulut depolama katmanlama ürünleri, Amazon S3 gibi, yabancı Iceberg tablolarıyla entegre edilmemiştir. Azure Databricks'te yabancı Iceberg tablolarına erişmek, daha düşük maliyetli depolama katmanlarında arşivlenen verileri geri yükleyebilir.
- Özel erişim modu kümelerinde, Iceberg tablolarındaki okumalar ve
REFRESH FOREIGN TABLEişlemleriALL PRIVILEGESgerektirir.