Sobes.tech
Middle

Əməliyyatların izolasiya növləri hansılardır?

sobes.tech Süni İntellekt

AI-dan cavab

Əməliyyatların izolasyonu, bir əməliyyatın paralel şəkildə icra olunan digər əməliyyatların ara dəyişikliklərini nə dərəcədə görə biləcəyini müəyyən edir.

SQL standartı dörd izolasiya səviyyəsini müəyyən edir:

  1. Read Uncommitted (Təsdiqlənməmiş oxuma): Ən aşağı səviyyə. Bir əməliyyat digər əməliyyatların təsdiqlənməmiş dəyişikliklərini oxuya bilər (kirlilik oxuması).
  2. Read Committed (Təsdiqlənmiş oxuma): Əməliyyat yalnız digər əməliyyatlar tərəfindən təsdiqlənmiş məlumatları oxuya bilər. "Kirlilik" oxumasını qarşısını alır.
  3. Repeatable Read (Təkrarlanan oxuma): Əməliyyat, əməliyyat zamanı oxunan məlumatların təkrarlanan oxuma zamanı dəyişməyəcəyini təmin edir. "Kirlilik" və "təkrarlanmayan" oxumağı qarşısını alır. "Fantomlar" baş verə bilər.
  4. Serializable (Serializasiya olunmuş): Ən yüksək izolasiya səviyyəsidir. Paralel əməliyyatların ardıcıl kimi icra olunmasını təmin edir. Bütün istənməyən hadisələrdən: "kirlilik" oxuma, "təkrarlanmayan" oxuma və "fantomlar"dan qaçınır.

Paralel əməliyyatların icrasında istənməyən hadisələr:

  • Dirty Read (Kirlilik oxuma): A əməliyyatı, B əməliyyatı tərəfindən edilən və hələ təsdiqlənməmiş məlumatları oxuyur. Əgər B əməliyyatı dəyişiklikləri geri alarsa, A səhv məlumatlarla işləyəcək.
  • Non-repeatable Read (Təkrarlanmayan oxuma): A əməliyyatı eyni məlumatı iki dəfə oxuyur, lakin arada B əməliyyatı bu məlumatlarda dəyişiklik edir. Nəticədə, A müxtəlif dəyərlər alır.
  • Phantom Read (Fantom oxuma): A əməliyyatı, satırların toplusunu qaytaran sorğu icra edir. B əməliyyatı, A sorğusunun kriteriyalarına uyğun satırların əlavə və ya silinməsini təsdiqləyir. Yenidən icra etdikdə, A fərqli satırların toplusunu alır.

İzolasiya səviyyələrinə görə istənməyən hadisələrin ümumi cədvəli:

İzolasiya səviyyəsi Kirlilik oxuma Təkrarlanmayan oxuma Fantomlar
Read Uncommitted Bəli Bəli Bəli
Read Committed Xeyr Bəli Bəli
Repeatable Read Xeyr Xeyr Bəli
Serializable Xeyr Xeyr Xeyr

İzolasiya səviyyəsinin seçimi, tətbiqin performansına və düzgünlüyünə təsir edir. Daha yüksək izolasiya səviyyəsi, əlavə xərcləri artırır.