Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Voordat u KTM gaat gebruiken, moet u de definities van de volgende termen kennen: transactie, resource manager, transactionele client, transactionele client, transactiemanager, logboekstream, opname en transactieverwerkingssysteem.
transactie
Een transactie is een verzameling gegevensbewerkingen. Alle bewerkingen moeten slagen zodat de transactie slaagt. Als alle bewerkingen slagen, kan de transactie worden doorgevoerd (dat wil gezegd, de resultaten ervan kunnen permanent en openbaar worden gemaakt). Als een bewerking mislukt, moet de transactie worden teruggedraaid (dat wil gezegd, alle wijzigingen moeten worden verwijderd, zodat de gegevens zich in dezelfde toestand bevinden als die zich bevond voordat de bewerkingen van de transactie werden gestart).
De bewerkingen van een transactie zijn atomisch, consistent, geïsoleerd en duurzaam (ACID).
Ze zijn atomisch omdat ze als geheel moeten worden doorgevoerd of teruggedraaid.
Ze zijn consistent omdat de bewerkingen altijd een nauwkeurig resultaat produceren, ongeacht of ze worden doorgevoerd of teruggedraaid.
Ze zijn geïsoleerd omdat de resultaten van elke transactie niet zichtbaar zijn voor andere transacties totdat de bewerkingen van de transactie zijn doorgevoerd of teruggedraaid.
Ze zijn duurzaam omdat, nadat de bewerkingen van de transactie zijn doorgevoerd of teruggedraaid, de resultaten van de bewerkingen permanent zijn.
Een voorbeeld van een transactie is de set bewerkingen die moeten worden uitgevoerd wanneer u een automatische tellermachine (ATM) gebruikt om geld over te brengen van uw bankrekening naar uw spaarrekening. De afschrijving van uw betaalrekening en de bijschrijving op uw spaarrekening moeten als één atomaire bewerking verschijnen.
Een bewerking die deel uitmaakt van een transactie wordt ook wel een transactiehandeling genoemd.
resource manager
Een resourcemanager is een softwareonderdeel dat gegevensresources beheert die kunnen worden bijgewerkt door transacties. Als u bijvoorbeeld een databasesysteem ontwerpt, kunt u een resourcemanager opgeven waarin de gegevens van de database worden opgeslagen en opgehaald. Een eenvoudig systeem voor transactieverwerking (TPS) heeft mogelijk slechts één resourcemanager.
Een resourcemanager biedt doorgaans ook een openbare interface die transactionele clients kunnen aanroepen om toegang te krijgen tot de gegevens van de resourcemanager. Resource Manager voor een database kan bijvoorbeeld een set functies bieden die clients kunnen aanroepen om te lezen en naar de database te schrijven.
Een complexere TPS kan meerdere resourcemanagers hebben, die elk een afzonderlijke database of andere resource beheren terwijl ze deelnemen aan de transacties van het systeem.
Zie Een Resource Manager maken voor meer informatie over resourcemanagers.
In sommige gevallen is één resourcemanager superieur aan de andere resourcemanagers en kunnen doorvoerbewerkingen worden gestart. In KTM worden dergelijke resourcemanagers superieure transactiemanagers genoemd.
transactieclient
Een transactionele client is een softwareonderdeel dat toegang heeft tot een database die een resourcemanager ondersteunt, meestal door functies aan te roepen die de resourcemanager exporteert. De client is verantwoordelijk voor het maken van transacties, het uitvoeren van een set bewerkingen die een Resource Manager ondersteunt en vervolgens de transactiebeheerder (KTM) informeren dat de transactie moet worden doorgevoerd of teruggedraaid.
Zie Een transactionele client maken voor meer informatie over transactionele clients.
transactiebeheerder
Een transactiebeheerder, zoals KTM, biedt de infrastructuur waarmee transactionele clients en resourcemanagers met elkaar kunnen communiceren. Ook wordt de status van elke transactie bijgehouden (maar niet de gegevens die clients en resourcemanagers verwerken).
De transactiebeheerder kan herstelbewerkingen ook coördineren na een systeemcrash.
De transactiebeheerder heeft geen kennis van de gegevens of bewerkingen waaruit een transactie bestaat. De gegevens en bewerkingen worden beheerd door de clients en resourcemanagers.
KTM biedt functies die transactionele clients kunnen aanroepen. Met deze functies kunnen clients transacties maken, doorvoeren en terugdraaien.
KTM biedt ook functies die resourcemanagers kunnen aanroepen. Met deze functies kunnen resourcebeheerders transacties inschakelen, zodat ze meldingen over transacties kunnen ontvangen. Nadat een Resource Manager in een transactie is opgenomen, kan deze een melding ontvangen wanneer een transactionele client klaar is om de transactie door te voeren of terug te draaien, of wanneer er een herstelbewerking plaatsvindt.
logstream
Een logboekstream is een vastgelegde geschiedenis van de gebeurtenissen die zijn gebeurd met transacties. KTM onderhoudt een logboekstream met behulp van het Common Log File System (CLFS). KTM registreert statuswijzigingen voor elke transactie, zodat het terugdraai- en herstelbewerkingen kan ondersteunen wanneer ze nodig zijn.
Resourcebeheerders moeten ook een logboekstream gebruiken om gegevens en bewerkingen vast te leggen.
Voor een terugdraaibewerking moeten KTM en resourcemanagers een transactie en alle gegevens in een initiële status herstellen. KTM en resourcemanagers registreren de initiële status van elke transactie in de logboekstreams, zodat ze deze kunnen ophalen tijdens een terugdraaibewerking.
Herstelbewerkingen vinden plaats na een systeemcrash. Wanneer het besturingssysteem vervolgens opnieuw wordt opgestart, kunnen KTM en resourcemanagers logboekstreaminhoud gebruiken om de status van een transactie opnieuw op te bouwen in de toestand waarin het zich vóór de crash bevond.
Zie Logboekstreams gebruiken met KTM voor meer informatie over logboekstreams in KTM.
dienstneming
Een registratie is een koppeling tussen een resourcemanager en een transactie. KTM biedt een set functies die resourcemanagers aanroepen om inlisten te maken en te beheren. Nadat een resourcemanager een registratie heeft aangemaakt, stuurt KTM meldingen naar de resourcemanager wanneer de status van de transactie wijzigt.
transactieverwerkingssysteem
Een transactieverwerkingssysteem (TPS) is een verzameling van een transactiemanager, een of meer resourcemanagers, een of meer logboekstreams en een of meer transactionele clients die toegang hebben tot de resources van de resourcemanagers.