Transaction Isolation Level Nedir?

Transaction Isolation Level Nedir?

Transaction Isolation Level Nedir?

Transaction, veritabanında birden fazla işlemin tek bir bütün olarak ele alınmasını sağlayan yapıdır. Ancak aynı anda birden fazla kullanıcı veya uygulama veriye eriştiğinde transactionların birbirini nasıl etkileyeceği önemli bir konu haline gelir. Bu noktada isolation level devreye girer.

Isolation level, bir transactionın diğer transactionlar tarafından yapılan değişiklikleri hangi seviyede görebileceğini belirler. SQL Server tarafında Read Uncommitted, Read Committed, Repeatable Read, Serializable ve Snapshot gibi farklı seviyeler bulunur.

Read Uncommitted en düşük izolasyon seviyesidir ve dirty read riskine izin verir. Yani henüz commit edilmemiş bir veri okunabilir. Read Committed varsayılan seviyelerden biridir ve commit edilmemiş verinin okunmasını engeller. Ancak non-repeatable read gibi durumlar hâlâ oluşabilir.

Daha yüksek izolasyon seviyeleri veri tutarlılığını artırırken kilitlenme ve performans maliyetini de yükseltebilir. Serializable en katı seviyelerden biridir ve phantom read riskini engeller, fakat yoğun sistemlerde dikkatli kullanılmalıdır.

Doğru isolation level seçimi uygulamanın ihtiyacına göre yapılmalıdır. Finansal işlemler gibi yüksek tutarlılık isteyen sistemlerde daha sıkı seviyeler gerekebilirken, raporlama ekranlarında daha esnek yaklaşımlar tercih edilebilir.

0 Yorumlar

Yorum Yaz

E-posta adresiniz yayınlanmayacaktır.