Tudd Intuíció, előadás, és a zár tranzakció

Abstract: A gazdasági művelet meghatározása és tulajdonságai; bemutatott explicit, implicit, automatikus és beágyazott tranzakciók. Leírja a feldolgozó eszköz és az ügylet kezelése. A mechanizmus a megőrzés és a tranzakciós rollback. Bevezeti a párhuzamosság az adatbázis működését és irányítási módszerek párhuzamos alkalmazásával zárak. A leírás a szintek zárak és szintű szerver szigetelés. Kiemeli a fő és a speciális zárak.







Bevezetés a tranzakciós

Tranzakciós koncepció - szerves részét képezi minden ügyfél-kiszolgáló tárol.

Az ügylet célja, oszthatatlan gyakorolt ​​hatás tekintetében az adatbázis szekvencia adatkezelési nyilatkozatok (olvasás, törlés, beszúrás, frissítés), ami egy két lehetséges kimenetele van: vagy a sorozat végre, ha az összes szereplők jobb, vagy az egész tranzakciót visszaállítják, ha legalább az egyik az üzemeltető nem lehet végrehajtani sikeresen. Tranzakciók feldolgozása biztosítja az adatok integritását az adatbázisban. Így az ügylet az adatbázist egy egységes állapotból a másikba.

Fenntartása tranzakciós mechanizmus - jelzi a fejlettségi szintjét az adatbázisban. Megfelelő karbantartás a tranzakció is az alapja integritásának biztosítása az adatbázisban. Ügyletek alapját is képezi izolációs többfelhasználós rendszerekben, ahol ugyanabban az adatbázisban futhat párhuzamosan több felhasználó vagy alkalmazás. Az egyik fő célkitűzése az adatbázis - annak biztosítása, elszigetelten. azaz létrehozását egy ilyen működési mód, amelyben minden felhasználó gondolta volna, hogy az adatbázis csak neki. Egy ilyen feladat nevű adatbázist párhuzamos tranzakciók.

A legtöbb végrehajtott cselekvések tett a szervezetben a tranzakció. Alapértelmezésben minden parancs végrehajtásra kerül, mint egy külön tranzakció. A felhasználó kifejezetten meghatározza annak elején és végén. hogy képesek lesznek néhány csapat.

Amikor az ügylet adatbázis-kezelő rendszert kell tartaniuk bizonyos szabályokat feldolgozása egy sor utasítást az ügylet. Különösen kifejlesztett négy szabályokat, az úgynevezett ACID követelményeknek. ezek biztosítják a pontosság és a rendszer megbízhatóságát.

ACID-ingatlanügyletek

Részletek az ügylet leírása az ACID (Atomicity, összhang, Isolation tartósság -. Oszthatatlan összhang szigetelési ellenállás ...).

  • Oszthatatlan ügylet abban az értelemben, hogy ez az egész. Az összes komponens vagy sor, vagy sem. Nincsenek részleges tranzakciók. Ha csak egy része a tranzakció nem hajtható végre. elutasítják.
  • A tranzakció összhangban. mert nem sérti az üzleti logika és a kapcsolatok az adatelemek között. Ez a tulajdonság nagyon fontos a fejlesztés kliens-szerver rendszerek, mint az adattárban kap nagyszámú tranzakciók különböző rendszerek és létesítmények. Ha legalább egyikük sértené a az adatok integritását, az összes többi adhat téves eredményt.
  • A tranzakció mindig elszigetelt. mert az eredmények önellátó. Ezek nem függenek korábbi vagy későbbi ügyletek - az ingatlan hívják serializable azt jelenti, hogy a sorozat a tranzakció független.
  • A tranzakció stabil. Annak befejezését követően tárolja a rendszer, amely semmi sem áll vissza az eredeti (az ügylet előtt) állapotban, azaz a A rögzítés tranzakciót. ami azt jelenti, hogy mindig is érvényes, ha a rendszer összeomlik. Ez azt jelenti, valamilyen formában tartós tárolása a memóriában részeként a tranzakciót.

A fenti szabály végrehajtja szerver. A programozó csak kiválasztja a kívánt szintet a szigetelés. törődik tiszteletben logikai adatok integritását és üzleti szabályokat. Ez felel létrehozása hatékony és logikailag helyes adatfeldolgozási algoritmusokat. Úgy dönt, hogy melyik csapat kell végezni, mint egy tranzakciót. és amely lehet osztani több végrehajtott tranzakciók egymás után. Lehetőség van használni a kis tranzakciókat. azaz beleértve a lehető legkisebb parancsok és megváltoztatja a minimális adatokat. E követelmény teljesülését lehetővé teszi a leghatékonyabb módja annak, hogy egyidejű működését több felhasználó adatait.







blokkoló

A teljesítmény növelése amikor kis tranzakciókat annak a ténynek köszönhető, hogy amikor a tranzakciós szerver ró a zár adatokat.

Ez lock úgynevezett határidő végrehajtás egyes adatfeldolgozási műveletek. A zár lehet alkalmazni külön sorban a táblázat, és az egész adatbázisban. Ellenőrző zár a szerver foglalkozik a zárat igazgató, felügyeli ezek alkalmazását és a konfliktusok. Tranzakciókat és zár szorosan kapcsolódnak egymáshoz. Szabhat ügylet zár az adatokat annak érdekében, hogy az ACID követelményeknek. Zárak nélkül több ügylethez módosíthatja ugyanazt az adatot.

Blokkolókonstrukció egy párhuzamos folyamat vezérlési eljárás. ahol az adatbázis-objektum nem módosítható ismerete nélkül a tranzakciót. azaz van blokkolja az objektum elérését más tranzakciók. mit nem kiszámíthatatlan változása az objektumot. Kétféle zárak:

  • felvétel blokkoló - line tranzakció zárolja a táblákat, hogy más tranzakció kérelmet e sorok törlésre kerül;
  • olvasni lock - line tranzakció zár, így a kérést egy másik ügylet letiltása felvétel ezeket a sorokat elutasításra kerül, és olvasási zár - elfogadta.

Az adatbázist használnak az adatok hozzáférési protokoll, amely kiküszöböli konkurencia problémákat. Ennek lényege a következő:

  • tranzakciót. aminek következtében adatsor a táblázatban a hasznosítás, akkor köteles átadni olvasási zárat, hogy egymás után;
  • tranzakciót. szánt adatsorban módosítások ró rá írási zár;
  • Amennyiben a kért zár egy sorban kell utasítani, mert a meglévő zár. az ügylet tartott, amíg a amíg a zár eltávolítása;
  • write lock megmarad, amíg a végén a tranzakciót.

Párhuzamos adatbázis feldolgozása megoldás a problémára az, hogy a táblázat sorait vannak zárva, és az azt követő tranzakció. módosításával ezek a sorok utasítani, és át készenléti üzemmódba. Ezzel kapcsolatban az ingatlan integritásának megőrzése az adatbázis tranzakciók megfelelő felhasználó elkülönítési egység. Valóban, ha minden alkalommal van kölcsönhatásban áll az adatbázis tranzakció megvalósul. a felhasználó elindítja az a tény, hogy fellebbez a konzisztens állapotban az adatbázis - az állapotba, amelyben az lenne, ha a felhasználó dolgozik vele egyedül.

Ha az adatbázis-kezelő rendszer nem hajtják végre, zár mechanizmus, az alábbi problémák egyidejű hozzáférést is előfordulhat olvasása közben vagy a változó ugyanazt az adatot több felhasználó számára:

  • A probléma az utolsó módosítás történik, ha több felhasználó módosítja az ugyanabban a sorban, a kiindulási érték; akkor az adatok elvesznek, mert Minden ezt követő ügylet felülírja a változásokat, amelyeket az előzőt. Ki ez a helyzet a szekvenciális módosítások;
  • A probléma a „piszkos” olvasás esetén lehetséges, hogy a felhasználó által végrehajtott komplex adatfeldolgozási műveletek, amelyeknél több adat változik, mielőtt lesz logikailag igaz állapotban. Ha közben adatváltozás másik felhasználó fogja olvasni őket, akkor lehet, hogy meg fogja kapni a logikailag téves információt. Az ilyen problémák elkerülésére, meg kell termelni az adatok olvasását követően minden változást;
  • Egyszeri probléma az olvasás eredménye ismételt olvasás ügylet ugyanezeket az adatokat. Végrehajtása során az első tranzakció, a másik, hogy módosítja az adatokat, így amikor újra elolvasta az első tranzakció már kap egy másik adathalmazt, ami sérti a saját integritását vagy logikai ellentmondás;
  • olvasni fantom probléma merül fel, a tranzakció után letölti a táblázat adatait, valamint a más betétek vagy töröl egy sort, mielőtt az első befejeződött. Kiválasztott értékeket a táblázatban nem megfelelőek.

Ahhoz, hogy megoldja a fenti problémákat egy speciálisan kialakított négy standard blokk-szintű meghatározott. tranzakció izolációs szint határozza meg, hogy a többi (rivális), hogy módosítsa a tranzakciós adatok megváltoztak az aktuális tranzakciót. és hogy a jelenlegi tranzakció történt változásokat egyidejű tranzakciók. és fordítva. Minden szinten támogatja a korábbi követelmények és további korlátozásokat:

  • 0 szint - tilalma „szennyezés” az adatokat. Ez a szint szükséges adatok módosítására csak az egyik ügylet; ha egy másik tranzakció szükséges megváltoztatni ugyanazokat az adatokat, meg kell várni a befejezése az első tranzakció
  • 1. szint - tilalma „piszkos” olvasás. Ha a tranzakció elején az adatmódosítási, akkor nincs más tranzakció tudja olvasni őket befejezése előtt az első;
  • 2. szint - a tilalom nem ismételhető mérés. Amennyiben egy tranzakció adatokat olvas, hogy más tranzakció nem lesz képes megváltoztatni őket. Így a második olvasat során, akkor lesz az eredeti állapotában;
  • 3. szint - tilalma fantomok. Ha a tranzakció adatokhoz való hozzáférés, akkor nincs más ügylet egy új vagy törölhet egy meglévő sort, amely olvasható a tranzakció során. Végrehajtása e blokkoló réteg segítségével hajtjuk végre, a zár kulcs tartományban. Az ilyen blokkoló nem alkalmazni az egyedi A táblázat, és on-line kielégítő egy meghatározott logikai feltétel.



Kapcsolódó cikkek