Управление на транзакции

Преглед

Транзакцията е последователност от четене и писане на база данни. Има две очевидни характеристики: атомарност и сериализация в традиционната база данни (RDB): атомарност и сериализация. Атомно означава, че операциите за четене и запис в транзакциите могат да се разглеждат като една атомна операция за базата данни. Seriebial означава, че ефектът от едновременното изпълнение на множество транзакции е същият като едно от изпълнението на тези транзакции. По този начин задачата на управлението на транзакцията е да осигури атомарността и серийността на транзакцията, която се състои от две части: контрол на паралелността и възстановяване. Едновременният контрол включва автоматичен контрол на множество транзакции за едновременен достъп до обща част от базата данни. Възстановяването включва състоянието, което е съществувало преди базата данни да бъде възстановена до грешката на транзакцията.

Конфигуриране на управление на транзакции

Системата за транзакции се състои от Мениджър на транзакции, Мениджър за възстановяване, Мениджър на заключване, Мениджър на блокиране, Мениджър на кеша.

Мениджър на транзакции

Мениджърът на транзакции е отговорен за генерирането на транзакции и присвояването на идентификатор на транзакция, който трябва да може да генерира достатъчно подтранзакции и да присвоява достатъчно идентификатор на транзакция, ако е необходимо. Когато подаването е изпратено, мениджърът на транзакциите трябва да знае своята родителска бизнес идентичност и да извърши серия от операции и ако може директно да получи своята родителска бизнес идентичност директно, това значително ще подобри ефективността на обработката на транзакциите.

Мениджър за възстановяване

В модела на вложена транзакция дъщерните транзакции могат да се изпращат независимо спрямо родителските транзакции и братските дела и обемът на подтранзакциите няма да доведе до връщане на родителските и братските дела. Ако някое ниво (дете) бъде върнато назад, всички негови подтранзакции са паднали, независимо дали са внедрили локално подаване. Следователно, когато се изпрати изпращане, мениджърът за възстановяване трябва да свърже своята връзка към регистрационния файл към регистрационния файл на родителските транзакции, което изисква Мениджър за възстановяване да знае самоличността на родителския бизнес. След това, ако можете директно да получите неговата родителска бизнес идентичност директно от маркировката на подтранзакцията, това значително ще подобри ефективността на работата на мениджъра за възстановяване.

Transaction management

Диспечер на заключване

В модела на вложена транзакция, след като дъщерната транзакция бъде изпратена, родителската транзакция може да наблюдава всички промени, които прави. Вижда се промяната на подтранзакцията в началото на транзакцията на детето. Когато въпросите на детето се изпълняват едновременно, промяната не показва делата на братята; в противен случай детето се изпраща и промяната му се показва на братята. Следователно, когато се изпрати изпращане, то преобразува притежаваното заключване към родителя. Когато транзакцията е приложена, мениджърът на заключване е отговорен за преценката на съвместимостта на заключването: ако е така, присвоете го на съответната ключалка на транзакцията; в противен случай се определя дали транзакцията на заключването на приложението е наследник на заключената транзакция, ако може да бъде Присвояване на съответното заключване, в противен случай тя не може да отговори на изискванията на приложението. След това, ако можете директно да определите дали има наследствена връзка между двете транзакции, това значително ще подобри ефективността на работата на мениджъра на заключване.

Мениджър на заключване на защитата

Новото приложение изисква най-големия паралелизъм в структурата на транзакцията, включително паралелизъм между паралелни и базирани на родител транзакции между братя. Те водят до диверсификация на връзката на изчакване между транзакциите и допълнително причиняват диверсификация на видовете блокирания, което несъмнено увеличава трудността на откриването на блокиране. За да се подобри ефективността на откриването на безизходна блокировка, "скритата" безизходна ключалка се открива възможно най-скоро, първо трябва ефективно да представим различни изчакващи отношения. Съгласно модела на вложена транзакция, мениджърът на блокиране управлява основно три чакащи отношения:

(1) Транзакцията на заключването на приложението чака да има транзакция за заключване;

(2) Транзакция майка Изчакване на всички подтранзакции;

(3) Заключвания на приложения Изчакайте заключен бизнес да отговаря на най-високото ниво на следните условия: той не е предшественик на бизнеса на бизнеса.

Ефективното представяне на третото изчакващо отношение може да избегне много безсмислена работа, но това трябва да намери най-високото ниво на необичайни предци на двете транзакции. За да постигнете целта, трябва да правите постоянно търсене и сравнение на йерархията на транзакциите, което е чудесна работа. След това, ако можете директно да откриете необичайните предшественици на техните най-високи слоеве от идентичността на двете транзакции, това ще избегне много режийни разходи, което значително подобрява ефективността на работата на мениджъра на блокиране.

Кеш мениджър

Въз основа на разглеждането на ефективното използване на кеша, мениджърът на кеша изисква структурата за съхранение на транзакцията да осигурява гъвкава и ефективна поддръжка за кратка идентификация и дълга идентичност, очевидна, статична Структурата е неподходяща и изисква гъвкава динамична структура.

Цялото транзакционно търсене за лого на транзакция е:

(1) може директно да идентифицира самоличността на своята основна транзакция директно от подтранзакциите;

( 2) Логото на транзакцията осигурява добра подкрепа за ширината и ширината на йерархичната структура на транзакцията (т.е.: без ограничение за ширината и ширината);

(3) Структурата за съхранение на идентификатора на транзакция осигурява достатъчен идентификатор на транзакция (т.е.: Няма ограничение за броя лого на транзакция);

(4) може да прецени дали двете транзакции имат наследствена връзка според транзакцията;

(5) може да се намери според логото на транзакцията Най-високото ниво на необичайни предци на две транзакции;

(6) Идентификаторът на транзакцията трябва да бъде гъвкав и с променлива дължина, което може да използва пълноценно пространството за съхранение за ефективно съхраняване на дълга и къса идентификация.

Related Articles
TOP