Tranzactie -

Tranzacție (tranzacția engleză.) - în informatică. un grup de operațiuni consecutive, care este o unitate logică de lucru cu datele. Tranzacția poate fi efectuată fie păstrarea integrității în întregime și cu succes a datelor și orice alte operațiuni care se extinde în paralel sau nu efectuate deloc și, prin urmare, nu ar trebui să producă nici un efect. Tranzacții procesate de sistemele de tranzacție. în procesul de care este creat istoricul tranzacțiilor.

Distinge succesive (normal), paralele și distribuite tranzacție. tranzacțiile distribuite implică utilizarea a mai mult de un sistem tranzacțional și necesită o logică mult mai complexe (de exemplu, în două faze - două faze să execute tranzacții de protocol). De asemenea, în unele sisteme, tranzacții autonome sunt puse în aplicare. sau sub-tranzacții care fac parte autonomă a tranzacției mamă.

EXEMPLUL tranzacție

Exemplu: Doriți să transferați din contul bancar la numărul de numărul de cont 5 7 în mărime de 10 unități monetare. Acest lucru poate fi realizat, de exemplu, secvența redusă a acțiunilor:

  • începe o tranzacție
citește soldul numărul de cont 5 pentru a reduce soldul de 10 unități monetare pentru a stoca noul echilibru al numărului de cont 5 pentru a citi soldul numărul de cont 7 pentru a crește soldul de 10 unități monetare pentru a stoca noul echilibru al numărului de cont 7
  • pentru a termina tranzacția

Acești pași reprezintă o unitate logică de lucru „de numerar de transfer între conturi,“ și, astfel, sunt tranzacții. Dacă anulați această tranzacție, de exemplu, în mijloc, și nu pentru a anula toate modificările, este ușor să părăsească numărul titularului de cont 5 fără 10 unități, în timp ce proprietarul numărul de cont 7 nu le va primi.

Proprietățile tranzacțiilor

Una dintre cele mai comune set de cerințe la sistemul de tranzacționare și de tranzacție este un set de ACID (atomicitate, coerență, izolare, durabilitate). Cu toate acestea, există sisteme specializate proprietăți tranzacțional slăbit [1].

nivelurile de izolare tranzacție

În mod ideal, o tranzacție de utilizatori diferiți ar trebui să fie efectuată astfel încât să se creeze iluzia utilizatorul a tranzacției curente pe care - numai. În realitate, cu toate acestea, din motive de eficiență și pentru a efectua anumite sarcini specifice, baze de date oferă diferite niveluri de izolare tranzacție. Nivelurile sunt descrise în ordinea izolării tranzacției și fiabilitatea datelor

  • 0 - citire neconfirmate (Read Uncommited, murdar Read, murdar citește) - lectură modificările neangajate ale tranzacției și a tranzacțiilor concurente, pot exista impur, irepetabilă citește și fantomelor
  • 1 - dovedit de mare de citire (citire angajat) - citește toate tranzacțiile și modificările observate modificări de tranzacții simultane, citirea impur imposibil de citit posibil, irepetabilă și fantomelor
  • 2 - repetabile citit (Citire repetabilă, Instantaneu) - citirea toate modificările tranzacției, modificările efectuate de tranzacții simultane după începerea propriei lor, nu sunt disponibile, necurate și irepetabilă citirile sunt imposibile fantomelor, posibile
  • 3 - Comandat - (serializabilă serializat) - ordonate (serializabilă) tranzacție. situații identice în care tranzacțiile sunt executate strict secvențial, una după alta. Adică, o tranzacție rezultatul care este independent de ordinea de executare a etapelor de tranzacție (interzis să citească toate datele pe care s-au schimbat de la începutul tranzacției, inclusiv tranzacția acesteia). Fantomele sunt posibile.

Cu cât nivelul de izolare, cu atât mai multe resurse sunt necesare pentru a le sprijini.

Nivelul de izolare a bazei de date de tranzacție poate fi selectată pentru toate tranzacțiile dintr-o dată și pentru o anumită tranzacție. În mod implicit, cele mai multe baze de date utilizate de nivelul 1 (Read angajat). Nivelul 0 este folosit în principal pentru modificările apărute în urmărirea tranzacțiilor lungi sau citi date rar în schimbare. Nivelurile 2 și 3 sunt utilizate pentru exigente izolare tranzacție.

punerea în aplicare

Punerea în aplicare integrală a proprietăților de izolare niveluri acide și nu este o sarcină banală. Prelucrarea rezultatelor date de intrare într-un număr mare de modificări mici, inclusiv actualizarea atât a tabelelor și indexurile. Aceste modificări au potențialul de a eșua: din spațiu pe disc, operațiunea durează prea mult timp (timeout), etc. Sistemul trebuie să fie, în caz de eșec în mod corespunzător pentru a readuce baza de date de stat înainte de tranzacție ...

Primele baze de date comerciale (de exemplu, IBM DB2), utilizat exclusiv de blocare a accesului la date pentru proprietățile ACID. Dar un număr mare de încuietori care duce la o scădere substanțială a performanțelor. Există două familii populare de soluții la această problemă, ceea ce reduce numărul de blocări:

Dezvoltarea în continuare a tehnologiilor de gestionare a bazei de date a dus la apariția unor tehnologii de blocare-free. Ideea pentru controlul paralel al accesului prin timestamp-ul (controlul concurrency bazat pe timestamp) a fost dezvoltat și a dus la apariția arhitecturii MVCC multi-versiune. Aceste tehnologii nu necesită modificări de logare, fără umbră de pagini. Arhitectura, implementat în Oracle 7.x și versiuni mai vechi înregistrări mai mari de pagini într-un segment special de derulare înapoi, dar ele sunt încă disponibile pentru lectură. În cazul în care citirea cade de pe pagina de tranzacție, timestamp-ul este mai nou decât începutul lecturii, datele sunt preluate din segmentul rollback (de exemplu, un „vechi“ versiune). Pentru a sprijini această lucrare se realizează jurnalul de tranzacții, dar în contrast cu „exploatarea forestieră preempțiune“, aceasta nu conține date. Lucrul cu el este compus din trei etape logice:

  1. intenția de înregistrare pentru a face unele operațiuni
  2. Pentru a efectua o sarcină prin copierea paginilor variabile originale din segmentul rollback
  3. Scrieți că totul se face corect

Jurnalul de tranzacții coroborat cu segmentul rollback (o zonă în care este stocată o copie a tuturor modificat în datele tranzacției) asigură integritatea datelor. În cazul unei defecțiuni proceduri de recuperare a începe, care se uită la unele dintre intrările sale, după cum urmează:

  • În cazul în care înregistrarea daune, eșecul a avut loc în momentul de a pune un semn în revista. Deci, nimic important să nu piardă, ignora această eroare.
  • Dacă toate intrările marcate ca finalizate cu succes, eșecul a avut loc între tranzacții, nu există, de asemenea, nici o pierdere.
  • În cazul în care revista are o tranzacție ciot, eșecul a avut loc în timpul înregistrării pe disc. În acest caz, ne restabilim versiunea veche a datelor din segmentul rollback.

notițe

Vezi ce „Tranzacția“ în alte dicționare:

Tranzacție - operațiuni bancare, care constă în transferul de fonduri dintr-un cont în altul. A se vedea, de asemenea, plăți fără numerar :. tranzacții financiare dicționar Finam. Tranzacția este o tranzacție în calculator un set de operații asupra datelor, care, din punctul de ... ... Dicționar financiar

tranzacție - și apoi. Tranzacții și, atunci. f tranzacție. 1. pl. depășite. Note, scrieri (societate). Ei sunt dispuși să se alăture cu noi în corespondență științifică strânsă, a promis să continue dezbaterile lor filosofice și numele tranzacție sotsieteta izdavaemyya fabrică povsyagodno în ... Dicționar istoric al limbii române Gallicisms

tranzacție - substantiv. Numărul de sinonime: 4 • traducere (62) • redirecționare (15) • Comerț (39) • ... Dicționar de sinonime

tranzacție - solicitare de răspuns ciclu scurt de timp de interacțiune a obiectelor care include o solicitare - o căutare - răspuns. Acesta este de obicei efectuată într-un mod de dialog. Exemple de combinații: de procesare a tranzacțiilor Transaction Processing Manual tehnic ... ... interpret.

tranzacție - 4.15 tranzacție (tranzacție): Mesajul de comandă sau înregistrarea de intrare, care necesită în mod explicit sau implicit un tratament; informațiile conținute în tranzacție, se aplică numai pentru un singur subiect. Sursa ... Dicționar de termeni documentației normative și tehnice

tranzacție - cota de tranzit, și (programe). ... ortografie dicționar română

tranzacție - orice tranzacție comercială sau operațiune ... Ajutor Dicționar comercial

articole similare