133
транзакциялар мониторы енгізіледі.
Бұл ретте TPM екі функцияны орындайды:
1) желінің серверлеріне жүгінулерді біркелкі үлестіру жолымен
оларға жүктемені теңестіреді;
2) серверлерде орындалатын қосымшалар санын оңтайландырады.
Бірінші функцияны іске асыру үшін клиенттік сұрау салуларды
бағдарлау технологиясы қолданылады. TPM қосалқы жүйесі
динамикалық бағдарлы кестеге жүгінеді жəне клиенттік сұрау салуға
қызмет көрсете алатын бос серверді табады. Бос серверді іздестіру не
оларды кезеңдік сұрастыру, не белгілі бір алгоритм бойынша
жүргізіледі.
Транзакцияларды орындау жылдамдығын оңтайланыру үшін
белсенді серверлік қосымшаларды бақылау жүргізіледі. Сұрау
салуларға қызмет көрсететін серверлік қосымшалар неғұрлым көп
болса, OLTP-жүйелердің əрекет ету жылдамдығы соғұрлым жоғары.
Белсенді серверлік қосымшалардың оңтайлы санын іздестіру үшін
арнайы коэффициент пайдаланылады, ол мынадай формула бойынша
есептеледі [1]:
онда
Q— кезектегі сұрау салулар саны;
A— жұмыс істеп тұрған сер-
верлік қосымшалар саны.
Егер
M қандай да бір максималды төменгі шекті мəнінен асып кетсе,
онда серверлік қосымшаның көшірмесі іске қосылады. Шекті
минимумге жеткеннен кейін көшірме сервердің жадынан алып
тасталады.
Басқару мехнизмі транзакциялармен қолданатын ақпараттық
жүйелерді əзірлеген кезде түрлі технологиялар пайдаланылуы мүмкін.
SQL сұрау салулар тілі нұсқаларының көбін транзакцияларды
басқару опреаторлары қолдайды:
•
COMMIT
— транзакциямен қоздырылған,
өзгерістерді тіркеу;
•
ROLLBACK
— өзгерістерді тоқтату, деректер қорын бастапқы
қалпына қайтару.
Транзакцияларды басқарудың базалық моделі ANSI/ISO моделі
болып табылады. Осындай модель транзакция пайдаланушы немесе
SQL бірінші операторы берген сəттен
орындалатын
операторлардың реттілігі аяқталғанша мынадай тəсілдердің буреуі
арқылы басталатынын көздейді:
134
а)
COMMIT
операторы транзакцияныорындауды аяқтайды;
б)
ROLLBACK
операторы
изолированность;
в) өзгерістерді жүргізген бағдарлама жұмысының ойдағыдай
аяқталуы;
г) өзгерістерді
жүргізген
бағдарламаның
сəтсіз
аяқталуы.
транзакцияны «Кері шегіндіру».
Бір транзакцияның аяқталуы екінші транзакцияның автоматты түрде
басталуын білдіреді.
Sуbаsе ларды басқару моделінде Transact SQL тіл операторлары
пайдаланылады. Осындай модельде транзакцияны мына операторлар
көмегімен басқаруға болады:
1)
BEGIN
TRANSACTION
;
2)
COMMIT TRANSACTION
;
3)
SAVE TRANSACTION
Нүкте атауы;
4)
ROLLBACK
;
5)
ROLLBACKTO
Нүкте атауы.
Бірінші оператор транзакция басталғанын жариялау үшін
пайдаланылады. Екніші оператор транзакцияны орындау үдерісінде
жасалған өзгерістерді тіркеуге арналған. Үшінші оператор деректер
қорының транзакция орындалған сəтіндегі қалпын сақтайды.
Сақталған
қалпына операторда көрсетілген ат беріледі. Бұл ат
транзакцияның
ағымдағы қалпының нүктесі деп аталады
.
Транзакцияны «кері шегіндіруді» екі тəсілмен жүзеге асыруға
болады. Бірінші тəсіл төртінші опреатор көмегімен орындалады.
Транзакциямен жасалған барлық өзгерістер тоқтатылады, деректер
қоры транзакцияны орындау алдындағы қалпына оралады.
Бесінші жəне үшінші операторлар транзакция орындаған
əрекеттерінің бөлігін тоқтатуға жəне деректер қорын бұдан бұрын
сақталған күйлерінің біреуіне қайтаруға, содан кейін сақталған
нүктеден транзакцияны орындауды қайталау талпынысын жасауға
болады.
Транзакцияларды орындаған кезде аппараттық іркіліс болған
жағдайында қайтару нүктелері назарға алынбайды.
Miсrоsоft фирмасы DAO деректерге қол жеткізу объектілері
кітапханасында іске асырылған транзакцияларды басқару механизмін
ұсынады Wоrksрасе кітапханасының объектісі транзакцияларды
басқару жөніндегі мынадай əдістерді қолдайды:
•
BeginTrans
—
транзакцияларды ашу;
•
CommitTrans
— транзакцияларды тіркеу, өзгерістерді жазу;