Proiectarea Bazelor de Date

Curs
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 25 în total
Cuvinte : 10219
Mărime: 45.62KB (arhivat)
Cost: Gratis
Profesor îndrumător / Prezentat Profesorului: Cotelea Vitalie

Extras din document

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 XY din F+ şi XYZ.

Să observăm că dependenţa XY nu neapărat trebuie să aparţină mulţimii F. E de ajuns ca ea să aparţină închiderii F+, adică F|=XY.

Preview document

Proiectarea Bazelor de Date - Pagina 1
Proiectarea Bazelor de Date - Pagina 2
Proiectarea Bazelor de Date - Pagina 3
Proiectarea Bazelor de Date - Pagina 4
Proiectarea Bazelor de Date - Pagina 5
Proiectarea Bazelor de Date - Pagina 6
Proiectarea Bazelor de Date - Pagina 7
Proiectarea Bazelor de Date - Pagina 8
Proiectarea Bazelor de Date - Pagina 9
Proiectarea Bazelor de Date - Pagina 10
Proiectarea Bazelor de Date - Pagina 11
Proiectarea Bazelor de Date - Pagina 12
Proiectarea Bazelor de Date - Pagina 13
Proiectarea Bazelor de Date - Pagina 14
Proiectarea Bazelor de Date - Pagina 15
Proiectarea Bazelor de Date - Pagina 16
Proiectarea Bazelor de Date - Pagina 17
Proiectarea Bazelor de Date - Pagina 18
Proiectarea Bazelor de Date - Pagina 19
Proiectarea Bazelor de Date - Pagina 20
Proiectarea Bazelor de Date - Pagina 21
Proiectarea Bazelor de Date - Pagina 22
Proiectarea Bazelor de Date - Pagina 23
Proiectarea Bazelor de Date - Pagina 24
Proiectarea Bazelor de Date - Pagina 25

Conținut arhivă zip

  • Proiectarea Bazelor de Date.doc

Alții au mai descărcat și

Baza de Date care Gestioneaza Activitatea unei Firme care Realizeaza Productii Agricole

Prezentarea problemei Sistemul informativ creat vizeaza activitatea unei firme care realizeaza productii agricole si, de asemenea, lucrari...

Folosirea MySQL și PHP în Gestionarea unei Baze de Date pe Web

Introducere Conţinutul lucrării este dat de construcţia de legături dintre World Wide Web şi baze de date, dintre tehnologia veche şi cea nouă,...

Lucrul cu Numere Mari

De multe ori , in probleme, apar situatii cand este nevoie sa memoram numere intregi foarte mari (de ordinul sutelor de cifre), iar uneori trbuie...

Introducere în Limbajul Latex

2.1 INTRODUCERE O lucrare este predata editorului care, dupa verificarea semantica de catre un grup de recenzori, va accepta lucrarea. O lucrare...

Prezentarea Sistemului Fox Pro

Elementele de baza ale sistemului FoxPro Principalele elemente ale mediului FoxPro sunt: Bara de meniuri Fereastra de comanda Elementele de...

Programare C

CURS 2 1. -pr care tine cont de variabila declarata local #include <stdio.h> int a=20; main() { int a=4; printf ("nr este:%d\n",a); } 2....

Programare pe Componente

Obiectul cursului " Cerinte " Bibliografie MODULE 1. Componentele Visual Sudio si .net2003; arhitectura three-tier 2. Dezvoltarea aplicatiilor...

Curs HTML - Curs 1

Limbajul HTML ((HyperText Markup Language) este un limbaj care permite crearea de documente de tip hipertext, documente care vor fi utilizate si...

Ai nevoie de altceva?