Ce este o tranzacție

Ce este o tranzacție. Bază de date TRANZACȚII ȘI INTEGRITATEA

În cadrul tranzacției a însemnat indivizibilă în ceea ce privește impactul asupra secvenței bazei de date a declarațiilor de manipulare a datelor (citi, șterge, se introduce, să actualizeze) astfel încât fie rezultatele tuturor operatorilor implicați în tranzacție sunt afișate în baza de date, sau impactul tuturor acestor declarații este complet absentă.

Operațiunea este considerată o tranzacție, dacă satisface cerințele ACID si testul (atomicitate. Consistența. Izolarea. Durabilitate atomicitate, consistență, izolare, durabilitate).

Sloganul Tranzacție - - Atomicitate „Totul sau nimic“: la încheierea unei tranzacții COMMIT de fix garantat în memoria externă (adică a comite - „repara“ rezultatele tranzacției); la finalizarea operatorului de tranzacții rezultate ROLLBACK garantează absența memoriei externe (sensul cuvântului rollback - pentru a elimina rezultatele tranzacției).

Coerența - la sfârșitul integritatea tranzacției trebuie să fie instalate, dar în cursul integrității tranzacției este încălcat temporar.

Izolarea înseamnă că tranzacțiile concurente nu interferează unele cu altele.

Durabilitate înseamnă că toate au confirmat, în cursul modificărilor care trebuie aduse în baza de date, chiar dacă sistemul se blochează.

Menținerea mecanismului de tranzacție - un indicator al nivelului de dezvoltare a bazei de date. întreținerea corespunzătoare a mecanismului de tranzacție, în același timp, este fundamentul integrității bazelor de date și, de asemenea, baza de izolare în sistemele multi-utilizator. Adesea, aceste două aspecte sunt luate în considerare separat, dar de fapt ele sunt interdependente, după cum va fi prezentat mai jos.

Rețineți că, deși, în ceea ce privește integritatea mecanismului de tranzacție a bazei de date ar trebui să fie menținute în baza de date cu caracter personal, în practică, de obicei nu este efectuată. Prin urmare, în timpul tranziției de la personal la multi-utilizator SGBD utilizatorii se confruntă cu nevoia de o înțelegere clară a naturii tranzacției.

Tranzacție și integritatea bazei de date

Conceptul de tranzacție este direct legată de conceptul de integritate a bazei de date. Foarte des, baza de date poate avea o astfel de integritate restricții, care este pur și simplu imposibil să nu se rupă, care se efectuează numai o bază de date modificări operatorului. De exemplu, să presupunem că o bază de date are doi angajați și tabele departamente. Constrângerea naturală este valoarea coincidență _RAZMER DTD atribut într-un departament de relații tuple, descriind departamentul, numărul de tupluri de card de relația cu angajații. În acest caz, pentru a angaja un nou angajat în departamentul? Indiferent de ce operație va fi efectuată mai întâi (se introduce nou tuplu împotriva membrilor sau modificarea tuplu existente împotriva Diviziei) după efectuarea bazei de date ar putea incompletitudinea.

Prin urmare, pentru a menține astfel de constrângeri de integritate a permis încălcarea lor într-o tranzacție, cu condiția ca la finalizarea condițiilor de integritate tranzacției au fost îndeplinite. În sistemele cu mijloace avansate de control și monitorizare a integrității fiecărei tranzacții începe de la o stare consistentă, iar baza de date ar trebui să părăsească această integritatea statului după finalizarea acestuia. Imposibilitatea de a face acest lucru are ca rezultat faptul că, în loc de stabilire a rezultatelor are loc o tranzacție derulate înapoi (adică, COMMIT este executată în locul ROLLBACK operatorul), iar baza de date este încă într-o stare în care a fost la începutul tranzacției, adică într-o stare consistentă.

articole similare