Řízení transakcí

Přehled

Transakce je sekvence čtení a zápisu databáze. Existují dvě zřejmé charakteristiky: atomicita a serializace v tradiční databázi (RDB): atomicita a serializace. Atomický znamená, že operace čtení a zápisu v transakcích lze považovat za jedinou atomickou operaci pro databázi. Seriebial znamená, že účinek souběžného provedení více transakcí je stejný jako jeden z provedení těchto transakcí. Úkolem transakčního managementu je tedy zajistit atomičnost a serialitu transakce, která se skládá ze dvou částí: kontroly souběžnosti a obnovy. Souběžné řízení zahrnuje automatické řízení více transakcí pro současný přístup ke společné části databáze. Obnova zahrnuje stav, který existoval před obnovením databáze po selhání transakce.

Konfigurace správy transakcí

Transakční systém se skládá z Správce transakcí, Správce obnovy, Správce zámku, Deadlock Manager, Správce mezipaměti.

Správce transakcí

Správce transakcí je zodpovědný za generování transakcí a přidělování identifikátoru transakce, který by měl být schopen generovat dostatek dílčích transakcí a přiřadit dostatečné ID transakce podle potřeby. Když je odeslání odesláno, manažer transakce potřebuje znát svou mateřskou obchodní identitu a provádět řadu operací, a pokud může přímo získat svou mateřskou obchodní identitu přímo, výrazně to zlepší efektivitu zpracování transakcí.

Správce obnovy

Ve vnořeném transakčním modelu mohou být podřízené transakce zadávány nezávisle na rodičovských transakcích a bratrských záležitostech a objem dílčích transakcí nezpůsobí vrácení rodičovských a bratrských záležitostí. Pokud je jakákoli úroveň (dítě) vrácena zpět, všechny její dílčí transakce klesly bez ohledu na to, zda implementovaly místní podání. Proto při odeslání odeslání musí správce obnovení připojit svůj protokolový odkaz k protokolu nadřazených transakcí, což vyžaduje, aby správce obnovení znal identitu mateřské firmy. Pokud pak můžete přímo získat identitu mateřské firmy přímo z označení dílčí transakce, výrazně to zlepší efektivitu práce správce obnovy.

Transaction management

Správce zámku

Ve vnořeném transakčním modelu, jakmile je podřízená transakce odeslána, může nadřazená transakce sledovat všechny změny, které provede. Změna dílčí transakce na začátku transakce potomka je viditelná. Když záležitosti dítěte běží souběžně, změna nezobrazuje záležitosti bratrů; jinak se dítě odešle a jeho změna se zobrazí bratrům. Proto při odeslání odeslání převede vlastněný zámek na nadřazený. Když je transakce aplikována, je správce zámku odpovědný za posouzení kompatibility zámku: pokud ano, přiřaďte jej k zámku odpovídajícímu transakci; jinak se určí, zda je transakce zámku aplikace potomkem uzamčené transakce, pokud ji lze Přiřadit odpovídající zámek, jinak nemůže splnit požadavky její aplikace. Pokud pak můžete přímo určit, zda mezi těmito dvěma transakcemi existuje rodový vztah, výrazně to zlepší efektivitu práce správce zámku.

Správce zámku obrany

Nová aplikace vyžaduje největší paralelismus ve struktuře transakcí, včetně paralelismu mezi paralelními a nadřazenými transakcemi mezi bratry. Ty vedou k diverzifikaci čekacího vztahu mezi transakcemi a dále způsobují diverzifikaci typů uváznutí, což nepochybně zvyšuje obtížnost odhalování uváznutí. Abychom zlepšili efektivitu detekce uváznutí, je „skrytý“ mrtvý zámek nalezen co nejdříve, musíme nejprve efektivně reprezentovat různé čekající vztahy. V rámci modelu vnořených transakcí zpracovává správce uváznutí hlavně tři čekající vztahy:

(1) Transakce zámku aplikace čeká na transakci zámku;

(2) Nadřazená transakce Čekání na všechny dílčí transakce;

(3) Zámky aplikací Počkejte, až uzamčený podnik splní nejvyšší úroveň následujících podmínek: nejde o předchůdce podnikání daného podniku.

Efektivní reprezentace třetího čekajícího vztahu se může vyhnout spoustě nesmyslné práce, ale k tomu je potřeba najít nejvyšší úroveň nespolečných předků těchto dvou transakcí. Abyste dosáhli účelu, musíte neustále hledat a porovnávat transakční hierarchii, což je skvělá práce. Pokud pak můžete přímo zjistit nespolečné předky jejich nejvyšších vrstev z identity dvou transakcí, vyhnete se velké režii, což výrazně zlepšuje efektivitu práce správce uváznutí.

Správce mezipaměti

Na základě zvážení efektivního využití mezipaměti správce mezipaměti vyžaduje, aby struktura úložiště transakce poskytovala flexibilní a efektivní podporu pro krátkou identifikaci a dlouhou identitu, zjevnou, statickou. Struktura je nevhodná a vyžaduje flexibilní dynamickou strukturu.

Vše, transakční poptávka po logu transakce je:

(1) může přímo identifikovat identitu své mateřské transakce přímo z dílčích transakcí;

(2) Logo transakce poskytuje dobrou podporu pro šířku a šířku hierarchické struktury transakce (tj. bez omezení šířky a šířky);

(3) Struktura úložiště identifikátoru transakce poskytuje dostatečné ID transakce (tj.: Počet log transakce není omezen);

(4) může posoudit, zda mají obě transakce vztah předků podle transakce;

(5) lze nalézt podle transakčního loga Nejvyšší úroveň nespolečných předků dvou transakcí;

(6) Identifikátor transakce by měl být flexibilní a měl by mít proměnlivou délku, aby mohl plně využít úložný prostor k efektivnímu uložení dlouhé identifikace a krátké identifikace.

Související články
HORNÍ