tranzakciós modell
Tranzakciós modellek. A koncepció és meghatározása az ügylet
A tranzakció a végrehajtott műveletek sorozata az adatbázisban, és átalakítja az adatbázist egy egységes (koherens) állapotból a másikba konzisztens (következetes) állapotba.
A tranzakció tekinthető oszthatatlan akció az adatbázis értelmes a szempontból a felhasználó. Ugyanakkor ez egy logikai egység a rendszer. Tekintsük néhány példát. Nevezhetnénk a tranzakció? Ki határozza meg, milyen műveletek sorozata az adatbázis a tranzakció? Persze, ez határozottan egy fejlesztő meghatározza, hogy milyen műveletek sorrendjét is szerves része, vagyis a tranzakció. Fejlesztő alkalmazások és a tárolt eljárásokat, meghatározza azt adatok alapján értelemben, azaz a szemantikai aggregált műveleteket az adatbázis, amely szimulálja a fejlesztő szemszögéből valaki elválaszthatatlan a munka, és a tranzakciót. Tegyük fel, hogy válassza ki a munka üzembe fogadott adatok könyvek, az új könyveket, amelyek korábban nem voltak a könyvtárban. Akkor ez a művelet lehet osztani két szekvencia első bemenő adat a könyv - ez egy új vonal a könyvekben asztalra, majd be az összes példányát egy új könyv - egy sor új beviteli sort a táblázatba Példaadónk megfelelő összeg az összeget megkapták a könyv. Ha ez a sorozat megszakad, adatbázisunkban nem felel meg a valódi tárgyat, ezért célszerű elvégezni, mint egy egyszeri feladat az adatbázis.
Tranzakciós modellek. ingatlan tranzakciók
- atomos (Atomicity) ingatlan tükrözi az a tény, hogy a tranzakciót végrehajtani egészben vagy egyáltalán nem végeztek.
- koherencia tulajdonság (konzisztencia) biztosítja, hogy ha a tranzakció lezárásához adatok továbbítódnak egy konzisztens állapotból a másikba - az ügylet nem szűnik meg a kölcsönös adatok konzisztenciáját.
- Az ingatlan szigetelés (Isolation) azt jelenti, hogy a versenyző számára a hozzáférést az adatbázishoz tranzakció fizikailag feldolgozott egymás után, egymástól elszigetelten, hanem a felhasználó úgy néz ki, mintha azok párhuzamosan hajtjuk végre.
- tartósság tulajdonság (tartósság) a következőképpen értelmezzük: ha a tranzakció sikeresen befejeződött, akkor az adatok változása, hogy a tettek azt nem lehet elveszíteni semmilyen körülmények között (még abban az esetben a későbbi hibák).
Tranzakciós modellek. befejezése módszerek
Két változat a tranzakciót. Ha az összes szereplők már sikeresen lezárult, és a folyamat a tranzakció nem volt hardver vagy szoftver hiba, a tranzakció véglegesítésre.
Kötelezi az ügylet - cselekmény, amely lemez írási adatbázis változások történtek során a tranzakció.
Amíg a tranzakció le nem kötött, engedélyezett a törlését ezeket a változásokat, visszaállítva az adatbázist az állam, amelyben ez volt a kezdete a tranzakciót. Transzferrekordot azt jelenti, hogy minden eredménye az ügylet válik véglegessé. Ezek láthatók lesznek a többi tranzakció után az aktuális tranzakció véglegesítésre. Eddig a pontig az összes adatot az ügylet által érintett lesz „látható”, hogy a felhasználó egy olyan államban, az elején az aktuális tranzakció.
Ha során a tranzakció történt valami, amely lehetetlenné teszi a normális megszűnése, az adatbázist kell visszaküldeni az eredeti állapotában. Visszaállíthatja az ügylet - cselekmény, amely eltörölte az összes adat változások történtek SQL a szervezetben a jelenlegi hiányos tranzakciót.
Minden utasítást egy ügylet teljesíti a munka egy részét, de a sikeres munka egészére szükséges feltétlen befejezése minden szereplők. Csoportosítása nyilatkozatok a tranzakciós adatbázis beszámol arról, hogy ez az egész csoportot kell darabból, ahol az ilyen teljesítmény fenntartását automatikusan.
Az ANSI / ISO SQL szabvány meghatározza tranzakciós modell és funkció COMMIT és ROLLBACK utasítások. A szabvány szerint a tranzakció kezdődik az első SQL utasításból, felhasználó által kezdeményezett vagy a programban szereplő változtatni a jelenlegi állapota az adatbázis. Minden ezt követő SQL-üzemeltetők alkotják a szervezet a tranzakció. A tranzakció befejeződött egyikében négy lehetséges módon (11.1 ábra.):

Ábra. 11.1. tranzakciós modell ANSI / ISO
1. COMMIT nyilatkozat tartalmazza sikeres tranzakció; annak használatát teszi maradandó változásokat az adatbázisba részeként az aktuális tranzakció;
2. ROLLBACK utasítást megszünteti a tranzakció visszavonása változások az adatbázis keretében a tranzakció; Egy új tranzakció után azonnal indul használat ROLLBACK;
3. A sikeres befejezése a program, amelyben az aktuális tranzakciót kezdeményeztek, az a sikeres tranzakció (mintha egy COMMIT nyilatkozat használták);
4. hibás befejezése a program megszakítja a tranzakciót (mintha ROLLBACK utasítást használunk).
Ebben a modellben minden szereplő, amely megváltoztatja az adatbázisban, ez tekinthető a tranzakció, így a sikeres adatbázis kezelő belép egy új stabil állapot.
Az első változat a kereskedelmi adatbázis valósult modell ANSI / ISO tranzakciót. Később a Sybase adatbázis hajtották végre kiterjesztett tranzakciós modell, amely magában foglalja számos további műveleteket. Sybase A modell a következő négy nyilatkozatai: