Tranzakciófeldolgozási feltételek

A KTM használatának megkezdése előtt ismernie kell a következő kifejezések definícióit: tranzakció, erőforrás-kezelő, tranzakciós ügyfél, tranzakciókezelő, naplóstream, beléptetés és tranzakciófeldolgozó rendszer.

tranzakció
A tranzakciók adatműveletek gyűjteményei. Az összes műveletnek sikeresnek kell lennie ahhoz, hogy a tranzakció sikeres legyen. Ha az összes művelet sikeres, a tranzakció véglegesíthető (vagyis az eredmények véglegessé és nyilvánossá tehetők). Ha bármelyik művelet meghiúsul, a tranzakciót vissza kell állítani (vagyis minden módosítást el kell távolítani, hogy az adatok ugyanabban az állapotban legyenek, mint a tranzakció műveleteinek megkezdése előtt).

A tranzakció műveletei atomi, konzisztens, izolált és tartós (ACID).

  • Atomiak, mert a tranzakciókat egészként kell elkötelezni vagy visszavonni.

  • Konzisztensek, mert a műveletek mindig pontos eredményt adnak, függetlenül attól, hogy véglegesítettek vagy vissza lettek-e állítva.

  • Elkülönítve vannak, mert az egyes tranzakciók eredményei nem láthatók a többi tranzakció számára, amíg a tranzakció műveleteit le nem véglegesítették vagy vissza nem hozták.

  • Tartósak, mert a tranzakció műveleteinek véglegesítése vagy visszaállítása után a műveletek eredményei véglegesek.

Egy tranzakcióra példa az a műveletkészlet, amelyet automatikus pénztárak (ATM) használatakor kell végrehajtani a pénzt a folyószámláról a megtakarítási számlára történő átutaláshoz. A folyószámláról érkező terhelésnek és a megtakarítási számlára történő jóváírásnak egyetlen, atomi műveletnek kell lennie.

A tranzakció részét képező műveletet tranzakciós műveletnek is nevezik.

resource manager
Az erőforrás-kezelő olyan szoftverösszetevő, amely felügyelt műveletekkel frissíthető adaterőforrásokat kezel. Ha például adatbázisrendszert tervez, megadhat egy erőforrás-kezelőt, amely tárolja és lekéri az adatbázis adatait. Egy egyszerű tranzakciófeldolgozó rendszer (TPS) csak egy erőforrás-kezelővel rendelkezhet.

Az erőforrás-kezelő általában egy nyilvános felületet is biztosít, amelyet a tranzakciós ügyfelek meghívhatnak az erőforrás-kezelő adatainak eléréséhez. Az adatbázis erőforrás-kezelője például olyan függvényeket biztosíthat, amelyeket az ügyfelek meghívhatnak az adatbázisból való olvasáshoz és az adatbázisba való íráshoz.

Az összetettebb TPS-ek több erőforrás-kezelővel is rendelkezhetnek, amelyek mindegyike külön adatbázist vagy más erőforrást kezel, miközben részt vesz a rendszer tranzakcióiban.

Az erőforrás-kezelőkről további információt a Resource Manager létrehozása című témakörben talál.

Bizonyos esetekben az egyik erőforrás-kezelő jobb a többi erőforrás-kezelőnél, és kezdeményezhet véglegesítési műveleteket. A KTM-ben az ilyen erőforrás-kezelőket kiváló tranzakciókezelőknek nevezzük.

tranzakciós ügyfél
A tranzakciós ügyfél olyan szoftverösszetevő, amely egy erőforrás-kezelő által támogatott adatbázishoz fér hozzá, általában az erőforrás-kezelő által exportált függvények meghívásával. Az ügyfél feladata a tranzakciók létrehozása, az erőforrás-kezelő által támogatott műveletek végrehajtása, majd a tranzakciókezelő (KTM) értesítése arról, hogy a tranzakciót véglegesíteni vagy vissza kell állítani.

A tranzakciós ügyfelekkel kapcsolatos további információkért lásd : Tranzakciós ügyfél létrehozása.

tranzakciókezelő
A tranzakciókezelő, például a KTM olyan infrastruktúrát biztosít, amely lehetővé teszi a tranzakciós ügyfelek és az erőforrás-kezelők közötti kommunikációt. Emellett nyomon követi az egyes tranzakciók állapotát (de az ügyfelek és az erőforrás-kezelők által kezelt adatokat nem).

A tranzakciókezelő a rendszer összeomlása utáni helyreállítási műveleteket is képes koordinálni.

A tranzakciókezelő nem ismeri a tranzakciót alkotó adatokat vagy műveleteket. Az adatokat és a műveleteket az ügyfelek és az erőforrás-kezelők vezérlik.

A KTM olyan függvényeket biztosít, amelyeket a tranzakciós ügyfelek meghívhatnak. Ezek a függvények lehetővé teszik az ügyfelek számára a tranzakciók létrehozását, véglegesítését és visszaállítását.

A KTM olyan függvényeket is biztosít, amelyeket az erőforrás-kezelők meghívhatnak. Ezek a függvények lehetővé teszik az erőforrás-kezelők számára, hogy csatlakozzanak a tranzakciókhoz, így értesítéseket kaphatnak a tranzakciókról. Miután egy erőforrás-kezelő bevont egy tranzakcióba, értesítést kaphat, ha egy tranzakciós ügyfél készen áll a tranzakció véglegesítésére vagy visszaállítására, vagy helyreállítási művelet történik.

naplófolyam
A naplóstreamek a tranzakciók során történt események rögzített előzményei. A KTM a Common Log File System (CLFS) használatával naplóstreamet tart fenn. A KTM az egyes tranzakciók állapotváltozásait rögzíti, hogy szükség esetén támogassa a visszaállítási és helyreállítási műveleteket.

Az erőforrás-kezelőknek naplóstreamet is kell használniuk az adatok és műveletek rögzítéséhez.

A visszaállítási művelet megköveteli, hogy a KTM és az erőforrás-kezelők visszaállítsák a tranzakciót és az összes adatot egy kezdeti állapotba. A KTM és az erőforrás-kezelők rögzítik az egyes tranzakciók kezdeti állapotát a naplóstreamekben, hogy lekérhessenek egy visszaállítási művelet során.

A helyreállítási műveletek rendszerösszeomlás után történnek. Amikor az operációs rendszer később újraindul, a KTM és az erőforrás-kezelők naplóstream-tartalommal újraépíthetik a tranzakció állapotát az összeomlás előtti állapotba.

További információ a naplóstreamekről a KTM-ben: Naplóstreamek használata A KTM használatával.

beléptetés
A beléptetés egy erőforrás-kezelő és egy tranzakció közötti társítás. A KTM olyan függvényeket biztosít, amelyeket az erőforrás-kezelők meghívnak a regisztrációk létrehozására és kezelésére. Miután egy erőforrás-kezelő létrehozott egy beléptetést, a KTM értesítéseket küld az erőforrás-kezelőnek, amikor a tranzakció állapota megváltozik.

tranzakciófeldolgozó rendszer
A tranzakciófeldolgozó rendszer (TPS) egy tranzakciókezelőből, egy vagy több erőforrás-kezelőből, egy vagy több naplóstreamből és egy vagy több tranzakciós ügyfélből álló gyűjtemény, amely hozzáfér az erőforrás-kezelő erőforrásaihoz.