Biologie | Chimie | Didactica | Fizica | Geografie | Informatica | |
Istorie | Literatura | Matematica | Psihologie |
In tehnica proiectarii bazelor de date se utilizeaza trei tipuri de modele de baze de date:
Modelul ierarhic;
Modelul retea;
Modelul relational
- Modelul ierarhic (arborescent) este modelul cel mai natural, iar rezultatul studiului dupa modelul ierarhic il reprezinta o structura ierarhica ramificata. Sa analizam structura Departamentului de informatica, cercetare si documentare (DICD) compus din trei servicii, in fiecare serviciu existand juristi si informaticieni
D.I.C.D. |
|
|||||||
Serviciul cercetare |
Serviciul documentare |
Serviciul informatica |
|||||
Birou juristi |
Birou informa-ticieni |
Birou juristi |
Birou informa- ticieni |
Birou juristi |
Birou informa- ticieni |
Parcurgand ramificatiile, ajungem la cercetatorul Ionescu din cadrul DICD, serviciul de informatica, biroul informaticieni.
Intr-o structura ierarhica ramificata, fiecare parinte poate avea mai multi copii, dar fiecare copil are un singur parinte.
Utilizand o astfel de schema, este usor de adaugat un jurist la Serviciul informatica, biroul juristi, dar este mai dificil sa numaram toti informaticienii din toate birourile.
- Modelul retea este un model performant, dar complicat. O baza de date de tip retea reprezinta o colectie de noduri si legaturi, fiecare nod putand fi legat de oricare altul. Legaturile formeaza trasee prin intermediul carora puteti raspunde repede nu numai la intrebarea referitoare la numarul de juristi din Serviciul cercetare, dar si cea relativa la numarul total de informaticieni din BD.
Legaturile trebuie stabilite avand tot timpul in minte interogarile posibile si actiunile viitoare probabile.
- Modelul relational reprezinta cel mai utilizat model de stocare a datelor, prezentat pentru prima data de E.F.Codd in 1970, in articolul "Un model relational al datelor pentru banci de date sau de date folosite in comun". Modelul este preluat de C.J.Date de la IBM, care, impreuna cu E.F.Codd, a fondat Institutul Relational, care este dedicat explicarii si promovarii modelului relational. Modelul relational este o abstractie matematica, este o metoda de reprezentare, manipulare si regasire a informatiei. In cadrul modelului relational, datele sunt stocate in tabele conceptuale in care randurile reprezinta cazurile posibile, iar coloanele atributele.
E.F.Codd a definit 13 reguli cunoscute ca "Cele 12 reguli ale lui Codd", care caracterizeaza modelul relational:
0. Un sistem relational de administrare a bazelor de date trebuie sa poata administra bazele de date in intregime prin functiile sale relationale.
1. Regula informatiei. Toate informatiile dintr-o baza de date relationala (inclusiv numele de tabel si de coloana) sunt reprezentate explicit ca valori in tabele.
2. Acces garantat. Orice valoare dintr-o baza de date relationala este accesibila garantat prin folosirea unei combinatii intre numele tabelului, valoarea cheii primare si numele coloanei.
3. Suportul sistematic al valorii nule. SGBD asigura un suport sistematic pentru tratamentul valorilor nule (date necunoscute sau neaplicabile), diferit de valorile prestabilite si independent de orice domeniu.
4. Catalogul relational activ on-line. Descrierea bazei de date si a componentelor sale este reprezentata la nivel logic sub forma de tabele si de aceea, poate fi interogata folosind limbajul bazei de date.
5. Sublimbajul multilateral al datelor. Trebuie sa existe cel putin un limbaj acceptat care sa aiba o sintaxa bine definita si sa fie multilateral, prin faptul ca suporta definirea si manipularea datelor, regulile de integritate, autorizarea si tranzactiile.
6. Regula actualizarii vederilor. Toate vederile care pot fi actualizate pot fi actualizate in cadrul sistemului.
7. Inserarea, actualizarea si stergerea la nivel de multimi. SGBD suporta nu numai regasirea datelor la nivel de multimi, ci si inserari, actualizari si stergeri.
8. Independenta fizica a datelor. Programele de aplicatii si cele create pe moment nu sunt afectate din punct de vedere logic la deteriorarea metodelor de acces fizic sau a structurilor de memorare.
9. Independenta logica a datelor. Programele de aplicatii si cele create pe moment nu sunt afectate din punct de vedere logic cand sunt facute modificari in structurile tabelelor.
10. Independenta integritatii. Limbajul bazei de date trebuie sa poata defini regulile de integritate. Acestea trebuie sa fie memorate in catalogul on-line si nu pot fi incalcate.
11. Independenta distributiei. Programele de aplicatii si cererile momentane nu sunt afectate din punct de vedere logic la prima distribuire a datelor sau la o distribuire ulterioara.
12. Nesubversiunea. Nu trebuie sa fie posibil sa fie incalcate regulile de integritate definite prin limbajul bazei de date prin folosirea limbajelor de nivel inferior.
Ideea lui Codd pentru un sistem de administrare a bazelor de date relationale foloseste conceptele matematice de algebra relationala pentru a grupa datele in multimi si a stabili relatii intre submultimile (domeniile) comune. Datele sunt separate in multimi care seamana cu structura unui tabel format din elemente informationale individuale numite coloane, tuple sau campuri. Un singur set al unui grup de campuri este cunoscut ca o inregistrare, linie sau valorile tuplurilor.
De exemplu, pentru a crea o baza de date relationala constand din datele studentilor, punctul de start este un tabel numit STUDENTI. Campurile tabelului STUDENTI, sunt urmatoarele: nume, varsta, medie admitere, domiciliu, telefon.
STUDENTI
Nume |
Varsta |
Medie admitere |
Domiciliu |
Telefon |
Sex |
Popa Ion |
25 |
7,60 |
Bucuresti |
3354660 |
M |
Varga Pit |
20 |
8,30 |
|
- |
M |
Ion Tita |
19 |
9,10 |
|
- |
F |
Barbu Elena |
20 |
8,70 |
Tulcea |
- |
F |
Cele cinci linii alcatuiesc inregistrarile pentru tabelul STUDENTI.
Gasirea unei inregistrari din tabel presupune instruirea sistemului de administrare a bazei de date sa gaseasca inregistrarile in care campul NUME este completat cu numele Barbu Elena. Daca SGBD a fost instruit sa regaseasca toate campurile, vor fi returnate utilizatorului toate informatiile de pe linia 4.
Modelul relational de baze de date cuprinde trei componente principale:
- Structura datelor prin definirea unor domenii (valori atomice) si a relatiilor (atribute, tupluri, chei primare etc.);
- Integritatea datelor prin impunerea unor restrictii;
- Prelucrarea datelor prin operatii din algebra relationala sau calculul relational.
Modelul relational se bazeaza pe notiunea matematica de relatie, submultime a produsului cartezian a unei liste finite de multimi numite domenii. Elementele unei relatii se numesc tupluri, iar numarul de domenii din produsul cartezian se numeste aritatea relatiei. De exemplu, a1, a2, , ak cu ai din Di ( ) i = 1, , k reprezinta un tuplu al unei relatii de aritate k, in care ai este cel de-al i-lea element al tuplului; altfel spus, tabelul STUDENTI reprezinta o relatie in care capul tabelului reprezinta un tuplu, iar coloanele sale reprezinta valorile tuplurilor dintr-un domeniu dat al produsului cartezian.
In reprezentarea sub forma de tabel a unei relatii, coloanelor si, respectiv, domeniilor corespunzatoare lor li se asociaza nume intitulate atribute. Multimea numelor atributelor unei relatii se numeste schema relationala. Daca relatia numita R are atributele A1, A2 Ak, atunci schema relationala se noteaza R(A1, A2, , Ak).
Sub raport arhitectural, o baza de date poate fi privita din mai multe unghiuri de vedere:
- Unghiul de vedere al utilizatorilor, care lucreaza cu anumite parti componente ale bazei de date numite vederi, ce sunt descrise prin subscheme in sublimbaje ale limbajului de descriere a datelor. Utilizatorii primesc raspunsuri la cererile formulate prin intermediul limbajului de prelucrare a datelor.
-Unghiul de vedere al administratorului bazei de date, care integreaza toate vederile referitoare la baza de date intr-un model numit schema conceptuala, care constituie nivelul logic al bazei de date.
- Unghiul de vedere al implementatorului bazei de date, care priveste baza de date ca pe o colectie de fisiere memorate pe suporti externi. Acesta constituie nivelul fizic al bazei de date care este, de fapt, singurul nivel existent efectiv.
Copyright © 2024 - Toate drepturile rezervate