Tablo nedir?
Tablo bir şemada bulunur ve veri satırları içerir. Azure Databricks'te oluşturulan tüm tablolar varsayılan olarak Delta Lake kullanır. Delta Lake tarafından desteklenen tablolar,Delta tabloları
Delta tablosu, verileri bulut nesne depolama alanında dosyaların dizini olarak depolar ve tablo meta verilerini bir katalog ve şema içindeki meta veri deposuna kaydeder. Unity Kataloğu tarafından yönetilen tüm tablolar ve akış tabloları Delta tablolarıdır. Unity Kataloğu dış tabloları Delta tabloları olabilir ancak olması gerekmez.
Databricks'te Delta Lake kullanmayan tablolar oluşturabilirsiniz. Bu tablolar Delta tablolarının işlem garantilerini veya iyileştirilmiş performansını sağlamaz.
Tablolar veri satırlarını depolar. Tablo bir şemada bulunur ve veri satırları içerir. Aşağıdaki örnekte, beş çalışanla ilgili verileri içeren bir tablo prod.people_ops_employees gösterilmektedir. Meta veriler Unity Kataloğu'na kaydedilir ve veriler bulut depolama alanında depolanır.
çalışan verilerini içeren
Temel tablo izinleri
Tablo oluşturmak için, kullanıcıların şemada CREATE TABLE
ve USE SCHEMA
izinlerine ve üst kataloğunda USE CATALOG
izinlerine sahip olmaları gerekir. Bir tabloyu sorgulamak için, kullanıcıların tabloda SELECT
iznine, üst şemasında USE SCHEMA
iznine ve üst kataloğunda USE CATALOG
iznine sahip olması gerekir.
Unity Kataloğu izinleri hakkında daha fazla bilgi için bkz. Unity Kataloğu'nda ayrıcalıkları yönetme.
Unity Kataloğu'ndaki tablolar
Unity Kataloğu'nda tablolar, aşağıdaki tabloda gösterildiği gibi üç düzeyli ad alanının (catalog.schema.table
) üçüncü düzeyinde yer alır. Unity Kataloğu dış tabloları Delta tabloları olabilir ancak olması gerekmez.
Unity Kataloğu nesne modeli diyagramı, tablo odaklı
Delta tabloları
Delta Lake tarafından desteklenen Delta tablosu, verileri bulut nesne depolama alanında dosyaların dizini olarak depolar ve tablo meta verilerini bir katalog ve şema içindeki meta veri deposuna kaydeder. Databricks'te Delta tabloları varsayılan olduğundan, tablolara yapılan başvuruların çoğu, aksi belirtilmedikçe Delta tablolarının davranışını açıklar. Unity Kataloğu tarafından yönetilen tüm tablolar ve akış tabloları Delta tablolarıdır. Bkz. Delta Lake nedir?.
Databricks, dosya yolları yerine tam tablo adlarını kullanarak Delta tablolarıyla her zaman etkileşim kurmanızı önerir.
Yönetilen tablolar
Yönetilen tablolar, meta veri deposu kaydıyla birlikte temel alınan veri dosyalarını yönetir. Databricks, her yeni tablo oluşturduğunuzda yönetilen tabloları kullanmanızı önerir. Unity Kataloğu yönetilen tabloları, Azure Databricks'te tablo oluşturduğunuzda varsayılandır. Delta Lake'i her zaman kullanırlar. bkz. Yönetilen tablolarla çalışma.
Dış tablolar
Databricks dışında, bulut nesne depolama gibi bir dış depolama sisteminde depolanan verilere başvuran dış tablolar, bazen yönetilmeyen tablolarolarak adlandırılır. Bunlar, temel alınan veri dosyalarının yönetimini meta veri deposu kaydından ayrıştırırlar. Unity Kataloğu >, Delta Lake de dahil olmak üzere çeşitli biçimlerde dış tabloları destekler. Unity Kataloğu dış tabloları, dış sistemler tarafından okunabilen ortak biçimleri kullanarak veri dosyalarını depolayabilir. Bkz. Dış tablolarla çalışma.
Akış tabloları
Akış tabloları, öncelikli olarak artımlı verileri işlemek için kullanılan Delta tablolarıdır. Akış tablolarındaki güncelleştirmelerin çoğu yenileme işlemleriyle gerçekleşir.
Akış tablolarını Databricks SQL kullanarak Unity Kataloğu'na kaydedebilir veya DLT işlem hattının bir parçası olarak tanımlayabilirsiniz. Bkz. Akış tablolarınasıl çalışır? Databricks SQLakış tablolarını kullanarak veri yükleme ve DLT nedir?.
Yabancı tablolar
Harici tablolar, Lakehouse Federasyonu aracılığıyla bağlanılan Azure Databricks'e bağlı dış sistemlerde depolanan verileri temsil eder. Azure Databricks'te yabancı tablolar yalnızca okunabilir. Bkz. Lakehouse Federasyonu nedir?.
Özellik tabloları
Unity Kataloğu tarafından yönetilen ve birincil anahtarı olan herhangi bir delta tablosu bir özellik tablosudur. İsteğe bağlı olarak, düşük gecikme süreli kullanım örnekleri için çevrimiçi Özellik Deposu'nı kullanarak özellik tablolarını yapılandırabilirsiniz. Bkz. Çalışma Alanı Özellik Deposu'nda özellik tablolarıyla çalışma (eski).
Hive tabloları (eski)
Hive tabloları, Azure Databricks'te her ikisi de eski desenler olan ve önerilmez olan iki ayrı kavramı açıklar.
Eski Hive meta veri deposu kullanılarak kaydedilen tablolar varsayılan olarak verileri eski DBFS kökünde depolar. Databricks, tüm tabloların eski HMS'den Unity Kataloğu'na geçirilmesini önerir. Bkz. Eski Hive meta veri deposundaki veritabanı nesneleri.
Apache Spark, Hive tablolarını kaydetmeyi ve sorgulamayı destekler, ancak bu codec'ler Azure Databricks için iyileştirilmemiştir. Databricks yalnızca dış sistemler tarafından yazılan verilere yönelik sorguları desteklemek için Hive tablolarının kaydedilmesini önerir. Bkz. Hive tablosu (eski).
Canlı tablolar (kullanım dışı)
Canlı tablolar terimi, artık maddileştirilmiş görünümlerolarak uygulanan işlevselliğin daha önceki bir uygulamasını ifade eder. Canlı tablolara başvuran eski kodlar, gerçekleştirilmiş görünümler için söz dizimi kullanacak şekilde güncelleştirilmelidir. Bkz. DLT nedir? ve Databricks SQL'de materyalize görünümler kullanın.