Sunteți pe pagina 1din 10

Ministerul Educației, Culturii și Cercetării al Republicii Moldova

I.P. Centrul de Excelență în Informatică și Tehnologii Informaționale

Catedra: Informatică Aplicată

Studiu individual

la Asistența pentru baze de date

Elev: Coșman Stanislav, P 1821


Profesor: Arcan Petru

Chisinau 2019
1)Aria informațională a bazei de date
Modelul de date ierarhic
Modelul de date ierarhic a fost primul model folosit pentru organizarea datelor in baze de date datorita simplitatii
conceptului de ierarhie si a aplicabilitatii sale in modelarea realitatii inconjuratoare.

Modelul ierarhic are ca structura de baza structura arborescenta (ierarhia). Proprietatile acestei structuri de date
determina caracteristicile si restrictiile modelului ierarhic. In modelul ierarhic fiecarui nod al arborelui ii
corespunde un tip de inregistrare, format din unul sau mai multe campuri, reprezentand atribute ce descriu
entitati. Descrierea unei structuri ierarhice se poate face utilizand diagrame de structura.

Fig. 1. Diagrama de structura ierarhica


Din figura de mai sus se observa ca un nod parinte poate avea subordonate mai multe noduri copil, in timp ce
un nod copil poate avea un singur parinte, ceea ce inseamna ca relatia parinte-copil intre tipurile de inregistrari
va fi 1 la M (“unu la multi”) si cea copil-parinte va fi de tipul 1 la 1 (“unu la unu”).

Restrictii de integritate ale modelului ierarhic


Caracteristic modelului ierarhic este faptul ca nici o realizare a unui nod copil nu poate sa existe fara a avea
asociata o realizare a nodului parinte. Aceasta inseamna ca daca un nod parinte este sters, automat sistemul va
sterge intregul subarbore ce are ca parinte ale nod precum si ca o realizare a nodului copil nu poate fi inserata
daca o realizare a nodului parinte nu exista deja.
Tinand cont de cele de mai sus, precum si de relatiile permise intre realizarile tipurilor de inregistrari, pot fi
enuntate urmatoarele restrictii de integritate ale modelului ierarhic:
 realizare copil este intotdeauna asociata unei singure realizari parinte;
 daca un tip de inregistrare nu are realizari, atunci nici tipurile descendente de inregistrari nu au realizari

Modelul retea si baze de date retea

Modelul retea foloseste structura de date retea ca structura de baza. Reteaua este un graf orientat alcatuit din
noduri conectate prin arce. Nodurile corespund tipurilor de inregistrare, iar arcele pointerilor (adreselor de
legatura). Modelul retea foloseste inregistrarile pentru a reprezenta entitatile si pointerii intre inregistrari
pentru a reprezenta relatiile dintre entitati.

Structura de date retea seamana cu structura de date arborescenta, cu dfierenta ca un nod dependent (copil) poate
avea mai mult decat un singur parinte.

O baza de date retea consta dintr-un numar oarecare de tipuri de inregistrari. O inregistrare este constituita dintr-
un numar oarecare de campuri (elementare sau agregate). Un camp este cea mai mica unitate de date care are
nume. Fiecare camp are un tip de data asociat. Campul corespunde unui atribut, iar inregistrarea unei entitati.
Fig.2 Structura de date retea

Caracteristic modelului de date retea este conceptul de set, folosit pentru a exprima relatiile dintre entitati. Un tip
set consta dintr-un singur tip de nod proprietar si unul sau mai multe tipuri de noduri dependente, legate de
acesta, numite tipuri membre.

O realizare a setului este o colectie de inregistrari avand o realizare proprietar si un numar oarecare de realizari
membre asociate.

Modelul retea impune restrictia conform careia o inregistrare nu poate fi membra a doua realizari ale aceluiasi
tip set. Totusi, o inregistrare poate sa apartina mai multor tipuri set.

In modelul retea, toate seturile sunt implementate prin pointeri. Uzual, se creaza o lista inlantuita unde realizarea
proprietar este capul listei. Proprietarul are legatura cu primul membru, care se leaga de al doilea si asa mai
departe pana la ultimul membru. Ultimul membru face legatura cu proprietarul, formand un lant. O inregistrare
membru a unui set poate avea trei pointeri:

- spre inregistrarea urmaroare (next);

- spre inregistrarea anterioara (prior);

- spre proprietar (owner).

Modelul retea prezinta o serie de dezavantaje cum ar fi:

 modelul retea este complicat;


 structura retea tinde sa fragmenteze informatiile;
 cea mai mare parte a optimizarii sistemului se face mai mult manual decat aplicand programe de
optimizare;
 conceptul de indicator de pozitie este o sursa de complexitate si de erori.

Modelul de date relational

Este modelul de baze de date cel mai utilizat in prezent in gestiunea bazelor de date. Structura de baza a datelor
este aceea de relatie-tabel.

“Modelul relational (Relational Model) se bazeaza pe notiunea de relatie (relation) din matematica, care
corespunde unei multimi de entitati de acelasi tip si are o reprezentare usor de inteles si de manipulat, ce consta
intr-un tabel bidimensional, compus din linii si coloane. Fiecare linie din tabel reprezinta o entitate atribut
corespunzand unei coloane a tabelului.”
Structura bazei de date relațională
O baza de date relationala este compusa dintr-o multime finita de relatii, fiecare relatie reprezentand un tip de
entitate sau o asociere dintre doua sau mai multe tipuri (multimi) de entitati.

O baza de date relationala stocheaza datele in „relatii unice”, pe care utilizatorul le percepe sub forma unor
tabele.

Fiecare relatie este compusa din tupluri sau inregistrari si atribute sau campuri.

Fig.3 Structura tebelelor

Atributul unei relatii este atributul tipului de entitate sau de asociere pe care il reprezinta relatia respectiva,
reprezentand coloana unei tabele caracterizata printr-un nume. Unele atribute pot avea rol de chei, de diferite
tipuri.

Domeniul este ansamblu de valori posibile pentru atributele relatiei. Domeniul poate fi explicit, enumerandu-se
valorile posibile, sau implicit, precizandu-se proprietatile valorilor.

Tuplul este inregistrarea dintr-o tabela format dintr-un sir de valori corespunzatoare atributelor.

Ordinea fizica a inregistrarilor sau a campurilor dintr-un tabel este complet lipsita de importanta, iar fiecare
inregistrare din tabel este identificata prin intermediul unui camp care contine o valoare unica. Aceasta reprezinta
cele doua caracteristici ale unei baze de date relationale care permit datelor sa existe independent de modul in
care acestea sunt fizic stocate in calculator.

TIPURI DE LEGATURI RELATIONALE


Relatia stabileste o conexiune intre doua tabele ce sunt corelate logic unul cu celalalt, si ajuta la continuarea
imbunatatirii structurilor de tabel si la reducerea datelor redundante. Relatia este mecanismul care permite
extragerea datelor din mai multe tabele simultan.O relatie corect definita asigura integritatea la nivel de relatie,
care, la randul ei, garanteaza ca relatia insasi este solida si de incredere.

Modelul relational clasifica relatiile ca fiind de tip unu la unu (1:1), unu la mai multi (1:m) si mai multi la mai
multi (m:m).

O relatie intre tabele dintr-o pereche este stabilita in mod implicit prin intermediul valorilor echivalente ale unui
camp comun.

Atata timp cat un utilizator cunoaste relatiile dintre tabelele incluse intr-o baza de date, poate obtine acces la
date intr-un numar aproape nelimitat de moduri.
Arhitectura ANSI SPARC
Obiectivul arhitecturii
Obiectivul arhitecturii cu 3 niveluri este separarea vederii fiecărui utilizator asupra bazei de date de modul
în care ea este reprezentată fizic.

Avantajele separării sunt:

 vederea personalizată independentă a datelor,


 utilizatorii nu trebuie să aibă de-a face în mod direct cu detaliile privind stocarea fizică din baza de
date,
 administratorul bazei de date are posibilitatea de a schimba structurile de stocare ale acesteia, fără a
afecta vederile utilizatorului,
 structura internă a bazei de date nu este afectată de către modificările aspectelor fizice.
Nivelurile arhitecturii ANSI-SPARC

Arhitectura ANSI-SPARC este formată din 3 niveluri


 Nivelul intern – descrie cum sunt stocate datele în baza de date. Tratează chestiuni precum
alocarea spațiului de stocare pentru date și indecși, descrierea și plasarea înregistrărilor de stocare,
tehnici de comprimare a datelor și de codificare a acestora.
 Nivelul conceptual – reprezintă vederea generală a bazei de date. Descrie ce date sunt stocate în
baza de date și relațiile între acestea. Acest nivel include entități, atribute și relațiile dintre ele,
constrângeri asupra datelor, informații semantice asupra datelor, informații privind securitatea și
integritatea datelor.
 Nivelul extern – reprezintă vederea utilizatorului asupra bazei de date. Acest nivel descrie acea
parte a bazei de date care este relevantă pentru fiecare utilizator. Prin nivelul extern se realizează
independența logică a datelor.

Fig.4 Ahitectura ANSI SPARC


Limbajele interne a sistemelor de gestiune a bazelor de date
Structura fizică a bazei de date
Baza mea de date ese alcătuită din 9 tabele:
1. Atribute
2. InfoAgent
3. InfoClienti
4. InfoImobil
5. Regiune
6. Stare
7. Tip_Constructie
8. Tip_Imobil
9. Tip_Oferta

Fig.2 Tabelul Atribute

Fig. 2.1 Tabelul InfoAgent


Fig. 2.2 Tabelul InfoClient

Fig. 2.3 Tabelul InfoImobil

Fig. 2.4 Tabelul Regiune Fig. 2.5 Tabelul Stare

Fig. 2.6 Tabelul Tip_Constructie


Fig.2.7 Tabelul Tip_Imobil Fig.2.8 Tabelul Tip_Oferta

Schema relațiilor ER
Tipurile de dependențe funcționale. Regulile de interferență
Să considerăm relația InfoImobil din fig. 3

Constrângerile:
1. Camere, Dormitoare, Bloc_sanitar, Balcon determină funcțional Suprafața;
2. Adresa și Suprafața determină funcțional Preț
3. Aderesa determină funcțional Descriere

Reguli de inferență
Regula reflexivității. Dac Y ⊆X, atunci X ⊆Y.
Demonstrarea acestei afirmații este evident. Nu putem avea într-o relație două
tupluri cu X-valori egale și să nu fie egale componentele lor pentru o submulțime a lui
X.
O dependență X ⊆Y este trivial dacă Y ⊆X.
Regula incrementării. Dac X ⊆Y și Z ⊆W, atunci XW ⊆YZ.
Demonstrație. Fie r satisface dependența funcțional X ⊆Y, îns în ea exist dou
tupluri t1 ⊆i t2 cu XW-valori egale, dar componentele YZ nu coincid. Conform regulii
tuplurile t1 și t2 au Z-valori egale (fiindcă Z ⊆W). Atunci tuplurile trebuie s nu
coincid mcar pe un atribut din Y. Dar aceasta înseamn c tuplurile t1 și t2 au X-valori
egale și nu au Y-valori egale, ce contrazice ipoteza c relația r satisface dependența
funcțional X ⊆Y.
Regula aditivității. Dacă X →Y și X →Z, atunci X→YZ.
Demonstrație. Presupunem contrariul: în rela_ia r(R) există două tupluri t1 _i t2,
pentru care t1[X]=t2[X], dar t1[YZ] ≠t2[YZ]. Atunci, sau t1[Y] ≠t2[Y], sau t1[Z] ≠t2[Z], sau
ambele concomitent. Dar aceasta contrazice presupunerea, că relația r satisface
dependențele X→Y și X→Z.
Regula proiectivității. Dac X→YZ, atunci X→Y.
Demonstrație. Afirmația este adevrată, fiindcă, dacă r satisface X→YZ, atunci
pentru orice două tupluri t1 și t2 din t1[X]=t2[X] urmează t1[YZ]=t2[YZ] și tuplurile vor
coincide și pe orice submulțime ale mulțimii YZ. Deci t1[Y]=t2[Y].
Regula tranzitivității. Dac X→Y și Y→Z, atunci X→Z.
Demonstrație. Vom presupune contrariul. Fierelația r satisface dependențele X→Y și Y→Z, dar nu satisface
dependența X→Z.
Atunci relația r are cel puțin două tupluri t1 și t2, pentru care t1[X]=t2[X], iar t1[Z] ≠t2[Z].
Dacă t1[Y]=t2[Y], atunci inegalitatea t1[Z] ≠t2[Z] contrazice presupunerea c în r e valid
dependența funcțional Y→Z. Dac t1[Y] ≠t2[Y], atunci egalitatea t1[X]=t2[X] contrazice
presupunerea c X→Y e valid în r.
Algoritmul SATISF (r, X→Y)
Intrare: Relația r(R), dependen_a func_ional X→Y, unde X,Y→R.
Ieșire: Adevăr, dacă relația r satisface dependența funcțional X→Y; fals – în caz
contrar.
(1) Se sorteaz tuplurile relației r în așa fel, ca tuplurile cu X-valori egale să fie
grupate împreună.
(2) Se verific dacă mulțimea de tupluri cu X-valori egale are și Y-valori egale,
atunci la ieșire obținem adevr; în caz contrar - fals.

S-ar putea să vă placă și