COMPUTER ENGINEER

Örneklere git
Blog
SQL Server / T-SQL6 dk çalışma
59/ 65

Veri mühendisliği

Temporal, CDC ve Change Tracking

Geçmiş sorgusu ile değişiklik feed’i farklıdır.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

System-versioned temporal tablo satır sürümlerini history tablosunda tutarak geçmiş zamanı sorgulamayı sağlar. Period sütunları veritabanının yönettiği UTC transaction başlangıç zamanına dayanır; uygulamanın olay tarihiyle aynı olmak zorunda değildir. History boyutu ve saklama politikası planlanır.

CDC işlem logundan değişiklikleri yakalar; önceki/sonraki değerleri ve LSN aralıklarını kullanabilir. Change Tracking hangi anahtarların değiştiğini bildirir; bütün eski değerlerin arşivi değildir. Edition, servis ve sürüm koşullarını kontrol et. Bu özellikler birbirinin tam alternatifi değildir. Incremental tüketici checkpoint, retention ve kaçırılan pencere senaryosunu yönetmelidir. Ders yalnız mevcut özelliklerin durumunu okur; lab’da bunlar varsayılan kapalıdır.

NERESİNDE KULLANIRSIN?

Tarihsel rapor ve incremental entegrasyon ayrımını yapmak için.

SIK YAPILAN HATA

Change Tracking’i bütün eski satırları saklayan arşiv sanmak.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

T-SQL / SQL Server 2019+
SELECT name, temporal_type_desc FROM sys.tables WHERE schema_id = SCHEMA_ID(N'lab');

Lab tablolarının temporal durumunu gösterir.

Bu sayfa SQL çalıştırmaz. Örnekleri indirilebilir SqlStudioLab veritabanında, SSMS’de uygula. Geçici tablo örneklerini yeniden çalıştırırken yalnız ilgili #tabloyu temizle. VIEW, procedure ve function örnekleri lab’da kalıcı nesne oluşturur; üretim bağlantısı kullanma.

02 / SIRA SENDE

Önce kendin dene.

Lab tablolarında CDC tracking durumunu kontrol et.

Çözümü ve açıklamasını göster
Açıklamalı çözüm
SELECT name, is_tracked_by_cdc FROM sys.tables WHERE schema_id = SCHEMA_ID(N'lab');

Setup hiçbir değişiklik feed’ini etkinleştirmez; sıfır beklenir.