Tema de casa SO
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei
Proiectarea unei baze de date folosind sistemul MySql WorkBench
2
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei
Masterand: Matei Theodor
Cuprins:
INTRODUCERE:......................................................................................................4 I. Proiectarea Bazei de date...................................................................................4 II. Colectarea si analiza cerintelor .........................................................................6 2 .1 Proiectarea conceptual a bazelor de date ..................................................7 2.2 Proiectarea schemei conceptuale de nivel nalt ...........................................7 III. Proiectarea asocierilor....................................................................................11 3.1 Asocierea binar N:1 .................................................................................11 3.2 Asocierea binar M:N..................................................................................11 IV. Proiectarea tranzaciilor .................................................................................12 V. Prezentare Mysql Workbench [Link] [Link] [Link] [Link] tabelelor si a relatiilor dintre ele [Link]
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei
INTRODUCERE:
Sistemele de baze de date sunt o component esenial a vieii de zi cu zi n societatea [Link] cursul unei zile, majoritatea persoanelor desfasoara activitati care implica interaciunea cu o baza de date: depunerea sau extragerea unor sume de bani din banca, rezervarea biletelor de tren sau avion, cautarea unei referinte ntr-o biblioteca computerizata, cumpararea unor produse etc. Bazele de date pot avea dimensiuni (numar de inregistrari) extrem de variate, de la cateva zeci de nregistrari (de exemplu, baza de date pentru o agenda cu numere de telefon) sau pot ajunge la zeci de milioane de inregistrari (de exemplu, baza de date de plata pentru plata taxelor si a impozitelor). In sensul cel mai larg, o baza de date (database) este o colectie de date corelate din punct de vedere logic, care reflect un anumit aspect al lumii reale i este destinat unui anumit grup de utilizatori. n acest sens, bazele de date pot fi create i meninute manual (de exemplu, fiele de eviden a crilor dintr-o bibliotec, aa cum erau folosite cu ani n urm) sau computerizat, aa cum este majoritatea bazelor de date folosite n momentul de fa. O definiie ntr-un sens mai restrns a unei baze de date este urmtoarea: O baz de date (database) este o colecie de date creat i meninut computerizat, care permite operaii de introducere, tergere, actualizare i interogare a datelor.
I. Proiectarea Bazei de date
Dezvoltarea sistemelor de baze de date comport mai multe etape, care pot fi prezentate succint astfel: 1.1. Analiza i definirea sistemului: definirea scopului sistemului de baze de date, a utilizatorilor i a aplicaiilor acestuia. 1.2. Proiectarea sistemului: n aceast etap se realizeaz proiectul logic i proiectul fizic al sistemului, pentru un anumit SGBD ales. 1.3. Implementarea: este etapa n care se scriu definiiile obiectelor bazei de date (tabele, vederi, etc.) i se implementeaz aplicaiile software. [Link](sau conversia) datelor : popularea bazei de date,fie prin incarcarea directa a datelor,fie prin conversia unor date existente sub diferite alte forme. [Link] aplicatiilor:toate aplicatiile software existente in sistemele informatice precedente ale organizatiei se convertesc in noul sistem.
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei 1.6. Testarea i validarea: noul sistem de baze de date este testat i validat ct mai riguros posibil. [Link]:sistemul de baze de date este pus la dispozitia utilizatorilor sai cu toate aplicatiile realizate in cadrul sistemului informatic al organizatiei. [Link] si intretinerea: pe tot parcursul etapei de operare sistemul de baze de date trebuie sa fie in mod permanent monitorizat si intretinut pentru a sigura consistenta si securitatea datelor si pentru a permite atat cresterea continutului de date cat si dezvoltarea de noi aplicatii [Link] fi necesare la anumite intervale de timp,revizii si reorganizari ale sistemului de baze de date. n general, se consider c etapa de proiectare a unei baze de date se pot diviza, la rndul ei, n mai multe faze : a. Proiectarea conceptual a bazei de date. b. Alegerea unui SGBD. [Link] logic a bazei de date. d. Proiectarea fizic a bazei de date. Cerinele de Cerinele de n mod tipic, dezvoltarea unei baze de date const din desfurarea a dou Colectarea i date prelucrare categorii de activiti paralele, aa cum se poate vedea n figura de mai jos:
analiza cerinelor Faza 1:
Faza 2: Proiectare conceptual
Proiectarea schemei conceptuale i a schemelor externe (independente de SGBD)
Proiectarea tranzaciilor (independente de SGBD)
Faza 3: Alegerea unui SGBD
Proiectarea schemei conceptual si a schemelor externe(dependente de SGBD)
Faza 4: Proiectare logica
Faza 5: Proiectare fizica
Proiectarea schemei interne (dependent de SGBD)
Instructiuni de descriere a 5 (LDD) datelor (dependete de SGBD)
Faza 6: Implementare
Implemantarea tranzactiilor (dependente de SGBD)
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei
Prima categorie de activiti se refer la proiectarea structurii i a coninutului bazei de date, iar cea de-a doua categorie se refer la proiectarea modului de prelucrare a datelor. Aceste dou categorii de activiti sunt strns corelate: toate prelucrrile care se efectueaz n tranzacii depind de structura datelor memorate, iar proiectarea fizic a bazei de date depinde de prelucrrile necesare n tranzacii. Cele ase faze de proiectare i implementare enumerate mai sus nu se desfoar strict ntr-o singur secven.n multe cazuri este necesar modificarea proiectului dintr-o faz iniial ntr-una din fazele ulterioare, pentru a se obine rezultatele dorite. Aceste bucle de reacie ntre faze (sau n interiorul unei faze) sunt, n general frecvente n cursul proiectrii unei baze de date, dar nu au mai fost reprezentate n figura de mai sus, pentru a nu complica diagrama respectiv. Fazele cele mai importanate de proiectare a unei baze de date sunt fazele 2,4 si [Link] 1 in care se colecteaza informatiile despre cerintele de utilizare a bazei de date si faza 6,de implementare a datelor si a tranzactiilor pot sa nu fie considerate ca parte a procesului de proiectere a bazei de date ,ci ca parte de a ciclui de viata a sistemului din care face parte baza de [Link] 3 de alegere a sistemului de gestiune a bazei de date este mai putin o faza de proiectare ci mai curand o faza de decizie,in care factorii economici au pondere la fel de importanta ca si factorii tehnici.
II. Colectarea si analiza cerintelor
Inainte de a se proiecta efectiv o baz de date, este necesar s se cunoasc ce rezultate se ateapt utilizatorii poteniali s obin de la baza de date respectiv i ce informaii primare sunt disponibile pentru aceasta. De asemenea, este necesar s se cunoasc ce aplicaii se vor efectua (aplicaii de gestiune a stocurilor, aplicaii contabile, aplicaii de urmrire a consumurilor, aplicaii de salarizare, etc.). In general,in acesta faza de colectare si analiza a cerintelor se desfasoara urmatoarele activitati: Identificarea grupurilor de utilizatori potentiali si a [Link] regula,persoana cea mai avizata din cadrul fiecarui grup de utilizatori este cooptata ca participant in activitatile ulterioare de colectare si analiza a cerintelor. Revederea documentatiei existente privind aplicatiile [Link] afara de documentatiile aplicatiilor dorite se studiaza si alte documentatii(diagramele de organizare a intreprinderii,formularele existente de introducere a datelor,rapoartele utilizate in controlul activitatii respective,etc.)pentru a se decide daca aceste aspect influenteaza cerintele bazei de date.
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei Analiza mediului de operare si cerintelor de prelucrare a datelor. Aceasta activitate include analiza fluxului de informatii in cadrul sistemului ,precum si analiza tipurilor de tranzactii si a frecventei de lansare a [Link] de importanta este si stabilirea volumului si frecventei datelor actualizate precum si a volumului datelor returnate de interogari si a frecventei acestora. Chestionare si [Link] colecteaza raspunsuri scrise de la utilizatorii potentiali la diferite seturi de intrebari si se organizeaza interviuri cu persoanele care reprezinte diferitele grupuri de [Link] felul acesta,proiectantii pot intelege care sunt prioritatile de proiectare a bazei de date,importanta diferitelor aplicatii si performantele dorite de la acestea. Toate aceste activiti ofer informaii slab structurate, n general n limbaj natural, pe baza crora se pot construi diagrame, tabele, grafice, etc., manual sau folosind diferite instrumente software de proiectare. Aceast faz este puternic consumatoare de timp, dar este crucial pentru succesul sistemului informatic.
2 .1 Proiectarea conceptual a bazelor de date
Faza de proiectare conceptual a bazelor de date implic dou activiti paralele: proiectarea schemei conceptuale i a schemelor externe ale bazei de date i proiectarea tranzaciilor.
2.2 Proiectarea schemei conceptuale de nivel nalt
Dei nu este obligatoriu, aceast faz se poate menine independent de SGBD i produce un model de date de nivel nalt, care va fi implementat dup transpunerea lui ntr-un model de date specific. Chiar dac proiectanii pot porni direct cu scheme conceptuale specifice unui anumit SGBD (care se mai numesc i scheme logice), este totui recomandabil s se realizeze mai nti schema conceptual de nivel nalt independent de SGBD, deoarece o astfel de schema conceptual este o descriere stabil i inavuabil a bazei de date, iar alegerea unui SGBD i deciziile ulterioare de proiectare se pot schimba fr ca aceasta s se schimbe. Pentru proiectarea schemei conceptuale se identific elementele eseniale ale acesteia: tipurile de entiti i atributele lor precum i asocierile dintre aceste tipuri. Se pot defini, dac este necesar, subtipuri, prin specializri ale tipurilor de baz, sau supertipuri, prin generalizri ale tipurilor deja definite. Acest proiect conceptual de nivel nalt este realizat pe baza cerinelor definite n prima etap de proiectare i se reprezint, n general printr-o diagram Entitate-Asociere (extins). Exist mai multe aspecte privind modul de abordare a proiectrii conceptuale. Un prim aspect se refer la modul de proiectare a schemei conceptuale a bazei de date: proiectare prin integrarea cerinelor i proiectare prin integrarea schemelor externe.
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei n proiectarea prin integrarea cerinelor (care se mai numete i proiectare centralizat) se realizeaz mai nti integrarea (combinarea) tuturor cerinelor de proiectare ntr-un singur set de cerine, pe baza cruia se proiecteaz schema conceptual a bazei de date. Din aceast schema conceptual (unic) proiectat se deduc schemele externe (vederile) corespunztoare diferitelor grupuri de utilizatori i aplicaii. n proiectarea prin integrarea vederilor (schemelor) externe se proiecteaz cte o schem corespunztoare fiecrui grup de utilizatori i aplicaii, pe baza cerinelor acestora, dup care se combin aceste scheme ntr-o singur schem conceptual global, pentru ntreaga baz de date. Fiind dat un set de cerine, pentru un singur utilizator sau pentru mai muli utilizatori ai bazei de date, proiectarea schemei conceptuale care s satisfac aceste cerine se poate aborda ntr-o varietate de strategii, dintre care cele mai relevante sunt proiectarea ascendent (bottom-up) i proiectarea descendent (top-down). n proiectare ascendent a bazelor de date se pornete de la o schem conceptual universal care conine toate atributele, care sunt apoi grupate pentru a forma tipuri de entiti i asocierile dintre acestea. Proiectul poate fi rafinat prin grupri ulterioare i creare de supertipuri i subtipuri ale tipurilor existente. n proiectarea descendent a bazelor de date se pornete de la o schem conceptual dezvoltat n modelul Entitate-Asociere (extins) n care sunt cuprinse aspectele de baz (tipuri de entiti i asocieri ale acestora). Dezvoltarea i rafinarea acestui model se face prin adugarea de noi atribute i constrngeri, crearea unor subtipuri (prin specializare) i asocierea acestora cu tipurile de baz. Aadar, n aceast faz de proiectare se obine schema conceptual de nivel nalt a bazei de date, care este independent de orice model de date specific (ierarhic, reea, relaional, etc.), i de orice sistem de gestiune care poate fi folosit pentru realizarea bazei de date.
[Link] CONCEPTUALA DE NIVEL NALT A BAZEI DE DATE
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei Entiti. Tipurile de entiti puternice (normale) care se pot defini pentru modelarea activittii unei agentii sunt urmatoarele:
ANGAJAT(Nume,Prenume,Parola,Ghiseu) PERSOANE(Nume,Prenume,Serie_buletin,Numar_Buletin,CNP) RUTA(Nr_Km,Nr_bilete_rezervate,Clasa) TRONSON_Aerian(Data_plecare,Ora_Plecare,Data_sosire,Ora_sosire,Locuri_ramase,S ursa,Destinatie,Vehicul) TRONSON_Tren(Data_plecare,Ora_Plecare,Data_sosire,Ora_sosire,Locuri_ramase,Sur sa,Destinatie,Vehicul) TRONSON_Autocar(Data_plecare,Ora_Plecare,Data_sosire,Ora_sosire,Locuri_ramase, Sursa,Destinatie,Vehicul) Aeroporturi(Oras,Aeroporturi) Gari(Oras,Gari) Autogari(Oras,Autogari) Vehicul(Vehicul,Nr_locuri) Tara(Tari) Asocieri. Asocierile dintre mulimile de entiti se stabilesc n funcie de modul n care se desfoar activitatea modelat. De exemplu, dac agentia respectiv activitatea este organizat pe mai multe birouri(ghisee) i fiecare angajat lucreaz ntr-unul (i numai unul) din birouri,si se ocupa de cate o rezervare la un anumit moment(nu realizeaza mai multe rezervari concomitent) atunci ntre mulimile de entiti ANGAJAT-REZERVARI exist o asociere 1:N. Asocierea PERSOANE-REZERVARI este o asociere M:N dac se consider c opersoana poate sa faca mai multe rezervari si o rezervare poate sa contina mai multe persoane . O ruta este compusa din mai multe tronsoane i fiecare tronson poate fi inclus n mai multe, rute; deci asocierea RUTA-TRONSON este este M:N.
10
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei O mulime de entiti slabe se afl, de regul, n asociere N:1 cu mulimea de entiti puternice de care depinde. In exemplul dat, ntre mulimea AEROPORTURI i mulimea de entiti ORAS exist o asociere N:1.
III. Proiectarea asocierilor
3.1 Asocierea binar N:1
Asocierea binar N:1 dintre dou mulimi de entiti puternice din diagrama E-A se realizeaz n modelul relaional prin intermediul unei chei strine n prima relaie (cea cu multiplicitatea N a asocierii) care refer cheia primar (sau o cheie candidat) din relaia referit (cea cu multiplicitatea 1 a asocierii). De exemplu,asocierea N:1 ntre relaiile AEROPORTURI - ORAS se realizeaz prin cheia strin IdOras adugat relaiei AEROPORTURI, care refer cheia primar cu acelai nume a relaiei ORAS. Astfel de atribute (pentru definirea cheilor strine) nu exist n modelul E-A i ele trebuie s fie adugate n modelul relaional pentru definirea asocierii N:1, aa cum n modelul ierarhic pentru o astfel de asociere se adaug link-uri (pointeri) ntre noduri. Asocierea binar N:1 poate apare i ca asociere ntre o relaie corespunztoare unei mulimi de entiti slabe i relaia corespunztoare mulimii de entiti puternice de care aceasta depinde, aa cum a fost prezentat mai sus.
3.2 Asocierea binar M:N
Asocierea binar M:N dintre dou mulimi de entiti din diagrama E-A se realizeaz n modelul relaional prin intermediul unei noi relaii, numit relaie de asociere. Aceast nou relaie se afl n asociere M:1, respectiv N:1 cu fiecare din cele dou relaii date prin intermediul a dou chei strine care refer cheile primare (sau cheile candidate) din relaiile date. De exemplu, pentru a reprezenta asocierea M:N dintre relaiile RUTATRONSON_AERIAN se adaug o nou relaie numit RUTA2, care conine cheile strine IdTronson i IdRuta, ce refer cheile primare din relaiile TRONSON_AERIAN, respectiv RUTA. O relaie de asociere poate s conin i alte atribute n afara cheilor strine, atribute care caracterizeaz asocierea dintre relaiile date. Cheia primar a unei relaii de asociere binar poate fi o cheie artificial sau poate fi compus din cheile strine, eventual mpreun cu alte atribute ale relaiei. Asocierea M:N dintre relaiile PERSOANE-REZERVARI se realizeaz prin introducerea relaiei de asociere PERS, care conine dou chei strine, IdPersoane1 i IdPersoane2, care refer cheile primare IdPersoane si IdRezervari.
11
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei Schema conceptual a unei baze de date relaionale poate fi dezvoltat independent de un anumit SGBD, urmnd ca ulterior s se adauge diferite trsturi specifice SGBD-ului folosit. De obicei ns, fiecare SGBD pune la dispoziie un numr de instrumente mai mult sau mai puin prietenoase de proiectare a relaiilor i a asocierilor, astfel nct n mod frecvent, proiectul conceptual se dezvolt de la nceput n cadrul sistemului SGBD n care se va realiza baza de date. De exemplu, Microsoft Access ofer o interfa vizual de proiectare a relaiilor i a asocierilor deosebit de uor de utilizat. La fel, sistemele SQL Server sau Oracle 10g ofer instrumente grafice pentru proiectarea vizual a relaiilor.
IV. Proiectarea tranzaciilor
Atunci cnd se proiecteaz o baz de date, se cunosc n mare parte i ce tipuri de aplicaii se vor executa. Un aspect important n proiectarea bazelor de date este specificarea caracteristicilor funcionale ale acestor aplicaii ct mai devreme n cursul procesului de proiectare, astfel nct schema bazei de date s includ toate informaiile necesare cu privire la aceste aplicaii. n plus, cunoaterea importanei relative a diferitelor tranzacii executate de aplicaiile bazei de date, precum i a frecvenei de invocare a acestora, permite luarea unor decizii n etapa de proiectare fizic a bazei de date. Una din tehnicile cele mai obisnuite de specificare a tranzactiilor la nivel conceptual si independent de sistemul de de gestiune este de identifica intrarile si iesirile lor su comportarea [Link] sunt grupate in trei categorii:tranzactii de interogare,trnzactii de actualizare si tranzactii mixte,care executa atat interogari cat si actualizari. Pentru dezvoltarea ulterioara ulterioara in bune conditii a proiectului unui sitem de baze de date,atat proiectarea schemei conceptual Dup implementarea sistemului de baze de date vor mai fi identificate i implementate noi tranzacii. Totui, cele mai importante tranzacii sunt cel mai adesea cunoscute nainte de implementarea sistemului. Dac operaiile de acces la baza de date ale unei tranzacii sunt numai operaii de citire, acea tranzacie se numete tranzacie de citire (read-only transaction) i controlul concurenei unor astfel de tranzacii este mult mai simplu. In cele ce urmeaz se va studia cazul general, al tranzaciilor de citire i scriere (read-write transactions) care efectueaz att regsiri de date (prin operaii de citire) ct i actualizri (prin operaii de scriere), i care necesit tehnici de control al concurenei mult mai [Link] efectuate de o tranzacie i nregistrate de administratorul de refacere (recovery manager), pentru a asigura cele patru proprieti importante ale tranzaciilor (ACID), sunt urmtoarele: 1. begin: aceast operaie marcheaz nceputul execuiei unei tranzacii. 2. read sau write: sunt operaii de citire sau scriere a articolelor n baza de date, executate n cadrul unei tranzacii.
12
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei 3. end: aceast operaie marcheaz terminarea operaiilor de scriere sau citire din baza de date, ceea ce nseamn c tranzacia se poate termina; totui, este posibil s fie necesare unele operaii de verificare nainte de validarea (commit) tranzaciei. 4. commit: aceast operaie semnaleaz terminarea cu succes a tranzaciei, validarea tuturor modificrilor efectuate n baza de date i vizibilitatea modificrilor efectuate pentru alte tranzacii; din acest moment, modificrile efectuate nu mai pot fi anulate, nici pierdute printr-o defectare ulterioar a sistemului (bineneles, dac mecanismul de refacere al SGBD-ului funcioneaz corect). 5. rollback (sau abort): aceast operaie semnaleaz faptul c tranzacia a fost abandonat i c orice efect pe care tranzacia l-a avut asupra bazei de date trebuie s fie anulat (printr-o rulare napoi a operaiilor). 6. undo: aceast operaie este similar operaiei rollback, dar se aplic unei singure operaii, nu unei ntregi tranzacii. 7. redo: aceast operaie specific faptul c unele operaii ale unei tranzacii trebuie s fie executate din nou pentru a se putea valida ntreaga tranzacie. Ultimele dou operaii sunt necesare numai n anumite tehnici de refacere. n figura de mai jos este reprezentat diagrama de stare a unei tranzacii folosind limbajul UML, unde fiecare stare are o denumire i fiecare operaie provoac o anumit tranziie ntre stri. n starea ACTIVA se ajunge ca urmare a lansrii unei tranzacii prin operaia begin, iar execuia corect a operaiilor read sau write nu modific aceast stare. Atunci cnd o tranzacie se termin, ea trece n starea PARTIAL VALIDATA n care se efectueaz operaii de verificare impuse de tehnicile (protocoalele) de control al concurenei i de refacere. Dac ambele verificri sunt ndeplinite cu succes, atunci tranzacia este validat (prin execuia unei operaii commit) i trecut n starea VALIDATA; dac una sau ambele condiii nu sunt ndeplinite, tranzacia este trecut n starea ABANDONAT prin execuia operaiei abort. Starea TERMINAT este consecina imediat a atingerii uneia din strile VALIDAT sau ABANDONAT i nu necesit nici o alt operaie pentru efectuarea acestei tranziii.n cursul strii ACTIV, orice tranzacie poate fi abandonat (i trecut n starea ABANDONAT prin execuia unei operaii abort), dac diferite verificri efectuate nu sunt ndeplinite.
13
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei
Pentru refacerea bazei de date n condiiile n care unele tranzacii sunt abandonate sau n care pot aprea defecte de funcionare, sistemul SGBD menine un fiier jurnal, n care memoreaz operaiile efectuate de tranzacii. Fiierul jurnal este memorat pe disc i nu este afectat de diferite erori de execuie, cu excepia unei defectri catastrofice a discului. n plus, fiierul jurnal este salvat periodic pe un suport auxiliar (band magnetic), ca o msur de prevedere pentru astfel de defecte catastrofice. n fiierul jurnal (log file) se nregistreaz operaiile efectuate de fiecare tranzacie, identificat printr-un identificator unic (T) generat de [Link] nregistrare referitoare la o tranzacie cu identificatorul T este nregistrarea de start a tranzaciei: [begin,T]. La fiecare operaie write(X) executat de o tranzacie T, n fiierul jurnal se memoreaz o nregistrare de tipul [write,T,X,vechea_valoare,noua_valoare], dac pentru refacerea datelor se folosesc operaii undo, sau o nregistrare de tipul [write,T,X,noua_ valoare], dac se folosesc operaii redo. Sistemele care nu evit abandonarea n cascad a tranzaciilor nregistreaz n fiierul jurnal i operaiile de citire read(X), printr-o nregistrare de tipul [read,T,X,valoare]. Pentru fiecare tranzacie T, n fiierul jurnal se mai memoreaz starea de terminare: validat (printr-o nregistrare [commit,T] ) sau anulat (printr-o nregistrare[rollback,T]). Dup executarea validrii i nregistrarea ei n fiierul jurnal, efectul tranzaciei este permanent memorat n baza de date. Dac sistemul se defecteaz, la reluarea execuiei dup ndeprtarea defectului, sistemul SGBD va aduce baza de date ntr-o stare consistent prin examinarea fiierului jurnal. Dat fiind c fiierul jurnal conine o nregistrare pentru fiecare operaie de scriere care a modificat valoarea unui articol al bazei de date, este posibil de a anula efectul tuturor operaiilor de scriere efectuate de o tranzacie
14
Universitatea Politehnica Bucuresti Facultatea de Electronica,Telecomunicatii si Tehnologia Informatiei care a fost lansat dar nu a fost validat, parcurgnd napoi fiierul jurnal i nlocuind valoarea existent a articolului modificat cu vechea valoare, memorat n fiierul jurnal. n cazul abandonrii n cascad, trebuie s fie abandonate i tranzaciile care au citit valori modificate de tranzaciile abandonate.
15