Sobes.tech
Middle

Milyen létezik izolációs szintek osztályozása?

sobes.tech MI

Válasz az MI-től

Az adatbázisok izolációs szintjei meghatározzák, hogy mennyire vannak elszigetelve egymástól a tranzakciók és a többi tranzakció által végrehajtott változtatásoktól. Ezek különböző párhuzamos hozzáférési problémákat akadályoznak meg.

Az izolációs szintek osztályozása (SQL szabvány):

  • READ UNCOMMITTED
    • Engedélyezi a nem megerősített változtatások olvasását (szennyezett olvasás / dirty read).
    • Problémák: szennyezett olvasás, nem ismételhető olvasás, fantom olvasás.
  • READ COMMITTED
    • Csak megerősített változtatásokat enged olvasni.
    • Megakadályozza a szennyezett olvasást.
    • Problémák: nem ismételhető olvasás, fantom olvasás.
    • Alapértelmezettként a leggyakrabban használt szint.
  • REPEATABLE READ
    • Garantálja, hogy ugyanazokat a sorokat többször olvasva ugyanazokat az adatokat kapja, még akkor is, ha más tranzakciók módosítják azokat.
    • Megakadályozza a szennyezett olvasást és a nem ismételhető olvasást.
    • Probléma: fantom olvasás (új sorok megjelenése, amelyek megfelelnek a kiválasztási feltételnek).
  • SERIALIZABLE
    • A legmagasabb izolációs szint.
    • Garantálja a teljes körű elkerülést a párhuzamos hozzáférési problémákból.
    • A tranzakciók úgy futnak, mintha szekvenciálisan hajtódnának végre.
    • Megakadályozza a szennyezett olvasást, a nem ismételhető olvasást és a fantom olvasást.
    • Jelentősen befolyásolhatja a teljesítményt.

Párhuzamos hozzáférési problémák:

Probléma READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE
Szennyezett olvasás Igen Nem Nem Nem
Nem ismételhető olvasás Igen Igen Nem Nem
Fantom olvasás Igen Igen Igen Nem

Az izolációs szint kiválasztása az alkalmazás követelményeitől és az adatintegritás és a teljesítmény közötti kompromisszumtól függ.