Sobes.tech
Middle

Yalıtım seviyelerinin mevcut sınıflandırması nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Veritabanlarındaki izolasyon seviyeleri, işlemlerin birbirinden ve diğer işlemler tarafından yapılan değişikliklerden ne kadar izole edildiğini belirler. Bu seviyeler, çeşitli eşzamanlı erişim sorunlarını önler.

SQL standartlarına göre izolasyon seviyeleri sınıflandırması:

  • READ UNCOMMITTED
    • Onaylanmamış değişiklikleri okuma izni verir (kirlilik okuma / dirty read).
    • Sorunlar: kirli okuma, tekrarlanmayan okuma, hayalet okuma.
  • READ COMMITTED
    • Sadece onaylanmış değişiklikleri okumaya izin verir.
    • Kirlilik okuma engellenir.
    • Sorunlar: tekrarlanmayan okuma, hayalet okuma.
    • Varsayılan olarak en sık kullanılan seviyedir.
  • REPEATABLE READ
    • Aynı satır kümesini tekrar tekrar okumanın, diğer işlemler değişiklik yapsa bile, aynı verileri döndürmesini garanti eder.
    • Kirlilik okuma ve tekrarlanmayan okuma engellenir.
    • Sorun: hayalet okuma (yeni satırların, seçim koşuluna uygun olarak ortaya çıkması).
  • SERIALIZABLE
    • En yüksek izolasyon seviyesidir.
    • Eşzamanlı erişim sorunlarının tamamen ortadan kalkmasını sağlar. İşlemler, sıralıymış gibi yürütülür.
    • Kirlilik okuma, tekrarlanmayan okuma ve hayalet okuma engellenir.
    • Performans üzerinde önemli etkileri olabilir.

Eşzamanlı erişim sorunları:

Sorun READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE
Kirlilik okuma Evet Hayır Hayır Hayır
Tekrarlanmayan okuma Evet Evet Hayır Hayır
Hayalet okuma Evet Evet Evet Hayır

İzolasyon seviyesinin seçimi, uygulamanın gereksinimlerine ve veri bütünlüğü ile performans arasındaki dengeye bağlıdır.