Extras din curs
Prin proiectarea bazei de date, aici se subînţelege proiectarea unei scheme logice care ar înlătura apariţia unor anomalii în lucrul cu baza de date, asigurând totodată facilităţi şi performanţe sporite la exploatarea ei.
Anomaliile care apar în lucrul cu baza de date sunt cunoscute sub anomalii de actualizare a datelor. Ele sunt puse în legătură cu dependenţele care se manifestă între atribute. O asemenea abordare a anomaliilor de actualizare permite caracterizarea riguroasă a gradului de perfecţiune a schemei bazei de date şi face posibilă definirea unor tehnici formale de proiectare a unor astfel de scheme.
Prelucrarea datelor o perioadă de timp, cum se întâmplă în bazele de date, poate provoca o serie de probleme personalului responsabil de menţinerea integrităţii datelor. Anomaliile în date cum ar fi datele duplicate sau pierderile de informaţii pot apărea, dacă datele nu sunt organizate într-un mod rezonabil. În ce constă o organizare rezonabilă a datelor? Cercetările la zi şi experienţa acumulată în domeniul proiectării bazelor de date au arătat că unele aranjări de date lucrează mai bine decât altele. S-au elaborat tehnici de analiză a datelor şi organizare a lor într-o structură flexibilă şi stabilă.
Procesul de normalizare constă în aplicarea unui set de reguli predefinite asupra unei aranjări a datelor cu scopul reducerii structurii complexe şi transformării lor în structuri mai mici si stabile ce vor facilita manipularea şi menţinerea datelor.
La fiecare pas o regulă este aplicată, datele pot fi restructurate şi când regula este satisfăcută se spune că datele sunt într-o formă normală.
Deci normalizarea este o abordare formală de analiză şi grupare a datelor în structuri mai eficiente ce se pot acomoda viitoarelor actualizări. În afară de aceasta normalizarea minimizează impactul ce poate avea loc asupra aplicaţiilor în procesul actualizării bazei de date.
Pentru a produce o bază de date bine proiectată de obicei se porneşte de la relaţii nenormalizate şi printr-o serie de paşi se descompun structurile de date pentru a obţine schema finală a bazei de date.
5.1. Prezumţia schemei universale
Materia expusă până acum (şi mai departe) presupune că toată mulţimea de atribute formează schema unei relaţii “mari” şi toate constrângerile asupra atributelor sunt constrângeri ale acestei scheme.
Unul din scopurile, pe care şi le propune să le atingă modelul relaţional este eliberarea utilizatorului de a specifica căile de acces la date. Această problemă e cunoscută sub denumirea de problema navigaţiei logice. Însă, dacă baza de date constă din mai multe relaţii independenţa navigaţiei logice nu este asigurată.
De exemplu, fie baza de date are două relaţii angajaţi(FUNCŢIONAR DEPARTAMENT) şi departamente(DEPARTAMENT MANAGER). Pentru a obţine asocierile FUNCŢIONAR MANAGER se joncţionează relaţiile angajaţi şi departamente şi apoi relaţia obţinută se proiectează pe atributele FUNCŢIONAR şi MANAGER. Dar indicarea operaţiilor şi este specificarea căilor de acces. Dacă baza de date se restructurează, reprezentându-se printr-o singură relaţie, atunci trebuie să se modifice corespunzător şi programele ce specifică joncţiunea.
Formulând o interpelare (cerere) la baza de date ce se referă la mai multe relaţii din baza de date e comod a interpreta lumea reală ca o singură relaţie, schema căreia include toate atributele din schemele relaţiilor bazei. Această relaţie se numeşte relaţie universală, iar schema ei – schema relaţiei universale sau schema universală.
Modelul relaţiei universale realizează complet independenţa navigaţiei logice, excluzând astfel definirea unor căi de acces neoptimale din partea unor utilizatori neiniţiaţi. Deci acest model facilitează interacţiunea sistem-utilizator, cerând de la ultimul doar cunoaşterea atributelor şi semanticii.
Cea mai strictă formă de realizare a relaţiei universale constă în construirea propriu-zisă a bazei de date dintr-o singură relaţie pe mulţimea de atribute universală U. Dar aici apar multe dezavantaje. În primul rând, nu toate tuplurile vor avea valori definite. În al doilea rând, păstrarea tuturor datelor într-o singură relaţie inevitabil va genera o serie de anomalii de actualizare.
De aceea, realmente, baza de date constă dintr-o mulţime de relaţii normalizate definite pe submulţimi de atribute ale schemei relaţiei imaginare universale. Însă în acest caz baza de date trebuie să satisfacă unele condiţii.
Una din condiţii presupune că baza de date trebuie să posede proprietatea joncţiunii fără pierderi. Această problemă a fost abordată în capitolul precedent.
A doua – că descompunerea relaţiei universale imaginare conservă dependenţele. Această cerinţă va fi considerată în acest capitol.
A treia condiţie presupune ca atributele în schema universală joacă un singur “rol”. Astfel ambiguităţile sunt excluse. Dacă numele exprimă diverse noţiuni problema se soluţionează prin renumirea atributelor sau divizarea unui atribut în mai multe .
5.2. Descompunerea relaţiilor cu conservarea dependenţelor
S-a constatat că e binevenit ca descompunerea unei relaţii (inclusiv celei universale) să posede proprietatea joncţiunii fără pierderi. Aceasta este garanţia că relaţia poate fi refăcută din proiecţiile sale.
O altă importantă proprietate a descompunerii unei relaţii r(R) pe mulţimea de scheme R1,...,Rm, unde R=R1…Rm, constă că mulţimea de dependenţe valide în r(R) să se deducă din dependenţele valide în proiecţiile R1(r), ..., Rm(r).
Definiţia 5.1. Fie F o mulţime de dependenţe funcţionale asupra schemei R. Proiecţia mulţimii F asupra unei mulţimi de atribute Z, notată Z(F), este mulţimea de dependenţe XY din F+ şi XYZ.
Să observăm că dependenţa XY nu neapărat trebuie să aparţină mulţimii F. E de ajuns ca ea să aparţină închiderii F+, adică F|=XY.
Preview document
Conținut arhivă zip
- Proiectarea Bazelor de Date.doc