Röviden a zárak - szoftverfejlesztés és a kapcsolódó tevékenységek

Lock - egy relációs adatbázis beállítani a jel egy nyilvántartást, amely le van zárva a változásokat. Kétféle zárak - optimista és pesszimista.

optimista zár

Ha optimista zár alapján valós adatokat blokk nem fordul elő. Ehelyett a következő megközelítést alkalmazzuk - ha abban az időben a tranzakció, az megváltoztatja az adatok, hogy már megváltozott, miután elkezdődött, az ügylet befejeződik egy kivétel. Az optimista zárolási, hogy elkerüljék a holtpont (dead-lock). Megvalósítása optimista zár gyakran használt adatok verziószámozása - hozzáadjuk a táblázat oszlop, amely tárolja az aktuális verzió. A frissítés a kérelmet a rész, ahol az adat átkerül a változat, amelyet visszavont a változás. Ha a frissítés visszatért megváltozott sorok 0, akkor az adatok már megváltoztak, és az ügylet kell futtatni újra. Ehelyett változata képes tárolni az utóbbi időben a módosításokról.

pesszimista zár

Ha pesszimista zár rögzítésére feltöltött kizárólagos zárolást az adatbázis szintjén, így akadályozva meg az adatokhoz való hozzáférés más tranzakciókat. Van többféle pesszimista zár:
  1. olvasási zár
  2. blokkolja a felvétel
Ha letilt, ha elolvassa a rekord van zárva, amikor azt kérik az adatbázisból. A hátránya az, hogy ezen a módon akkor is zár az adatokat, amelyek nem változnak a jelenlegi tranzakció. Ha zárva van, ha a felvétel danyh blokkolás akkor történik, amikor a frissítés az adatbázis végéig a jelenlegi tranzakció. Lock adatok eltávolítása, ha akár kötelezettséget, vagy rollback a tranzakciót.

Összehasonlítása optimista és pesszimista zár

Ha szoftver kifejlesztésével, ki kell választani a stratégia a blokkoló adatokat. Meg kell vizsgálni az alábbiakat:
  1. Ha a helyzet frissítése ugyanazt az adatot egy időben viszonylag ritka, célszerű használni optimista zár. Ebben az esetben nem lenne drága erőforrás zár működését.
  2. Ha a lehetőségét, hogy egy helyzet frissítse ugyanazokat az adatokat elég nagy, akkor a legjobb, ha pesszimista zár, akkor számának csökkentése megszakadt tranzakciókat.
  3. Azt is meg kell jegyezni, hogy ha optimista zárolás esetén a tranzakció megszakítja kell futtatni újra.