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.
Databricks Runtime 14.1 ve üzeri sürümlerde kullanılabilen satır izleme, her satıra kararlı satır kimlikleri ve satır işleme sürümleri atayarak satır düzeyi köken izlemeyi etkinleştirir. Gerçekleştirilmiş görünümler için bazı artımlı güncellemeler bu özelliği gerektirir.
Tüm Apache Iceberg v3 tabloları satır izleme içerir. Bkz. Apache Iceberg v3 özelliklerini kullanma. Delta Lake tabloları için satır izlemeyi açıkça etkinleştirmeniz gerekir.
Note
Satır izlemenin etkinleştirilmesi tablo yazıcı protokollerini yükseltir ve dış Delta Lake istemcileriyle uyumluluğu etkileyebilir. Bkz . Delta Lake özellik uyumluluğu ve protokolleri.
Delta Lake tablolarında satır izlemeyi etkinleştirme
Delta Lake tablosunda satır izlemeyi etkinleştirmek için tablo oluşturma sırasında tablo özelliğini delta.enableRowTracking = true ayarlayın:
CREATE TABLE table_name
TBLPROPERTIES (delta.enableRowTracking = true)
AS SELECT * FROM source_table;
Var olan bir Delta Lake tablosunda satır izlemeyi etkinleştirmek için aşağıdaki örneği kullanın:
ALTER TABLE table_name SET TBLPROPERTIES (delta.enableRowTracking = true);
Important
Varolan tablolarda satır izlemeyi etkinleştirmek, tablodaki tüm mevcut satırlara otomatik olarak satır kimlikleri ve satır işleme sürümleri atar. Bu işlem tablonun birden çok yeni sürümünün oluşturulmasına neden olabilir ve tamamlanması önemli ölçüde zaman alabilir.
Uyarı
Tablonuz Yapılandırılmış Akış iş yükleri gibi sürekli yazma işlemleri için bir hedefse, satır izlemeyi etkinleştirmeden önce yazma işlemlerini duraklatın ve işlem tamamlandıktan sonra devam edin. Satır izlemeyi etkinleştirmek için ALTER TABLE kullanmak, tablo meta verilerini günceller ve işlem süresince eşzamanlı tüm yazma işlemlerinin MetadataChangedException ile başarısız olmasına neden olur. Bkz . Çakışma özel durumları.
Tabloyu kopyalamak ayrı bir geçmiş oluşturur, böylece kopyalanan tablolardaki satır kimlikleri ve satır işleme sürümleri özgün tablodakilerle eşleşmez.
Meta veri alanları
Satır izleme, tabloya iki gizli meta veri alanı ekler. Değerleri döndürmek için bu alanları sorgunuza açıkça ekleyebilirsiniz.
| Sütun adı | Türü | Değerler | Explanation |
|---|---|---|---|
_metadata.row_id |
Long | Satırın benzersiz tanımlayıcısı. | Satır, bir MERGE veya UPDATE deyimi kullanılarak değiştirildiğinde aynı kimliği tutar. |
_metadata.row_commit_version |
Long | Satırın son eklendiği veya güncelleştirildiği Delta günlüğü veya tablo sürümü. | Her değiştirildiğinde, MERGE veya UPDATE deyimi kullanılarak satıra yeni bir sürüm atanır. |
Bazı işlemler işlem günlüğünü kullanarak bu meta veri alanlarını depolar. Satır izleme özelliği etkinleştirilmiş bir tabloda OPTIMIZE veya REORG işlemlerini çalıştırmak, bu alanları depolamak için veri dosyalarını yeniden yazar.
Delta Lake tablolarında satır izlemeyi kapatın
Delta Lake tablosunda satır izlemeyi kapatmak için table özelliğini olarak falseayarlayın.
ALTER TABLE table_name SET TBLPROPERTIES (delta.enableRowTracking = false);
Important
Satır izlemeyi devre dışı bırakmak ilgili tablo özelliğini kaldırmaz ve tablo protokolü sürümünü düşürmez. Ayrıca meta veri alanlarını hedef tablodan kaldırmaz. Tablo özelliğini tamamen kaldırmak ve protokolü düşürmek için kullanın DROP FEATURE. Bkz . Delta Lake tablosu özelliğini bırakma ve tablo protokolünü düşürme.
Satır izlemeyi kapattıktan sonra, oluşturulan satır kimlikleri artık benzersiz satırları izlemek için güvenilir değildir.
Limitations
Değişiklik veri akışı okunurken satır kimlikleri ve satır işleme sürümleri meta veri alanlarına erişilemiyor. Bkz. Azure Databricks'te değişiklik veri akışını kullanma.