ROW_VERSION yerine her değişiklikte yeni kayıt oluşturan immutable sürüm modelinin audit ve geri dönüş avantajlarını inceliyoruz.

Neden önemli?

Mantıksal kayıt ile sürüm snapshot’ını ayırmak. Bu konu yalnız teknik bir ayrıntı değil; bakım maliyeti, güvenilirlik ve uzun vadeli mimariyi doğrudan etkiler. Sağlam bir tasarım, davranışın nerede başlayıp nerede bittiğini açık biçimde tanımlar.

Uygulama yaklaşımı

  • Mantıksal kayıt ile sürüm snapshot’ını ayırmak
  • PREVIOUS_VERSION_ID ile zincir kurmak
  • LATEST ve PUBLISHED pointer’larını birbirinden bağımsız yönetmek

PREVIOUS_VERSION_ID ile zincir kurmak. Uygulamada en yararlı yöntem, kararları küçük ve doğrulanabilir sözleşmelere ayırmaktır. Böylece hata oluştuğunda hangi katmanın sorumlu olduğu görülebilir ve değişiklikler başka modüllere kontrolsüz biçimde yayılmaz.

Pratik kontrol listesi

LATEST ve PUBLISHED pointer’larını birbirinden bağımsız yönetmek. Ölçüm, loglama ve sürüm geçmişi tasarımın parçası olmalıdır. Performans veya kullanıcı deneyimi adına veri bütünlüğünden vazgeçilmemeli; optimizasyon gerçek ölçümden sonra yapılmalıdır.

Sonuç: Tek bir doğru kalıp yoktur. Ancak sınırları açık, geçmişi korunmuş ve hatası gözlemlenebilir bir mimari çoğu projede daha sürdürülebilir sonuç verir.