Creeaza.com - informatii profesionale despre


Evidentiem nevoile sociale din educatie - Referate profesionale unice
Acasa » referate » informatica » baze de date
Prezentarea generala a modelului retea. Baze de date retea

Prezentarea generala a modelului retea. Baze de date retea


Prezentarea generala a modelului retea. Baze de date retea

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

Structura de date retea (Im. 1) seamana cu structura de date arborescenta. Modelul retea imparte multe asemanari cu modelul ierarhic. De fapt, modelul retea poate fi considerat o generalizare a modelului ierarhic, sau alternativ, modelul ierarhic poate fi privit ca o implementare particulara a modelului retea, adica un model de date retea in care segmentele copil pot avea doar un singur parinte. Aceasta restrictie este eliminata in modelul retea, adica un nod dependent (copilul) poate avea mai mult decit un singur parinte. Din aceasta diferenta rezulta ca modelul de date retea poate asigura relatiile many-to-many intre tipurile de entitati, aceasta constituind o problema fundamentala pentru modelul ierarhic.

A



B

C D


E F


G

Im. 1 Structura retea

1 Inregistrari si seturi

O baza de date retea consta dintr-un numar oarecare de tipuri de inregistrari. O inregistrare este construita dintr-un numar oarecare de cimpuri (elementare sau agregate). Un cimp este cea mai mica unitate de date care are nume. Fiecare cimp are un tip de data asociat. Cimpul corespunde unui atribut si inregistrarea unei entitati (Im. 2).


a) STU

CODS# NUMES ADRSTU CODC# PUNCTE

STR ORAS COD

 

b) STU

Im. 2 Exemplu de inregistrare

In imaginea 3 este reprezentata, prin intermediul unei diagrame de structura, structura retea a unei baze de date cu informatii despre proiectele unei firme si angajatii antrenati in realizarea lor. Diagrama corespunde unui graf retea in care nodurile au fost inlocuite de dreptunghiuri care reprezinta inregistrarile. Arcele reprezinta relatii de tip 1:1 sau 1:N intre inregistrari.

PROIECT DEPT


PROIECT_ANG DEPART_ANG

ANGAJATI


ANG_COPII


Im. 3 Diagrama retea

O trasatura a modelului este conceptul de set utilizat ca modalitate de exprimare a relatiilor.

Un tip set (Im. 4) consta dintr-un singur tip de nod proprietar (parinte) si unul sau mai multe tipuri de noduri dependente legate de acesta, numite tipuri membre (copii). Imaginea 4 ilustreaza un tip set numit DEPT_STU in care DEPT este tipul proprietar si STU tipul membru. Acest set reprezinta in fapt o relatie 1:M intre inregistrarile DEPT si STU.

DEPT

 


DEPT_STU Im. 4 Tip set

STU

 


O realizare a setului este o colectie de inregistrari avind o realizare proprietar si un numar oarecare de realizari membre asociate. Deci exista o realizare a setului DEPT_STU pentru fiecare realizare a inregistrarii DEPT in baza de date (Im. 5).

Daca exista un departament fara studenti avem o realizare cu proprietar si fara membrii. O astfel de realizare a setului se numeste vida.

Im.5 Exemple de realizari


S1015

 

S1002

 

S1013

 

S1005

 

S1001

 


etc.

Modelul retea impune restrictia conform careia o inregistrare nu poate fi membra a doua realizari ale aceluiasi tip set. Rezulta ca, in exemplul considerat, un student nu poate fi inclus in mai multe departamente. Totusi, o inregistrare poate sa apartina mai multor tipuri set. Un tip de inregistrari poate fi un tip proprietar intr-un set si un tip membru in altul. De exemplu, in diagrama de structura din imaginea 3, ANGAJAT este membru a doua tipuri set, PROIECT_ANG si DEPART_ANG si proprietar al unui tip set ANG_COPII.

Astfel, o anume inregistrare ANGAJAT poate fi conectata cu o inregistrare PROIECT, cu o inregistrare DEPT si cu o inregistrare COPII.

Din setul DEPT_STU prezentat in imaginea 4 putem spune carui departament ii apartine un student cunoscind in ce realizare a setului DEPT_STU este inregistrarea STU.

Un set esential transmite informatii pastrind o conexiune logica datorata existentei sale. Alternativa unui set esential este sa tinem valoarea unuia sau mai multora dintre cimpurile realizarilor inregistrarilor proprietar in realizarea membrului. Normal, acest cimp este o cheie externa. Un set cu astfel de informatii in inregistrarile membri se numeste set pe baza de valoare. Daca dorim sa reducem redundanta pentru a asigura integritatea datelor si a folosi eficient spatiul alegem seturi esentiale. Daca nu dorim ca informatiile sa fie pierdute sau distruse, alegem seturi pe baza de valoare.

Pentru ca seturile sint doar metode de reprezentare a relatiilor dintre inregistrari si pentru ca un set poate avea un singur proprietar, nu exista o cale directa de a reprezenta relatiile de tip M:N in acest model. Deci nu putem reprezenta relatia STU_CURS din imaginea 6.a) in mod direct. Totusi exista un mod indirect pentru solutionarea acestei situatii. Astfel, cind intre doua tipuri de inregistrari exista o relatie de tip M:N, pentru reprezentarea acesteia, vom crea un nou tip de inregistrare, numita inregistrare de intersectie sau legatura, constind din cheile inregistrarilor asociate, plus informatia de intersectie, adica atribute descriptive ale caror valori depind de asociere. In imaginea 7 apare inregistrarea intersectie creata pentru fiecare interactiune intre o inregistrare STU si una CURS. Aceasta diagrama arata trei tipuri de inregistrari si doua tipuri de seturi. Fiecare inregistrare de intersectie apartine celor doua seturi.

STU

  STU


 



Im. 6 (a, b) Reprezentarea relatiilor

STU CURS


LEGATURA

Im. 7 Diagrama cu 2 tipuri de seturi

Un alt exemplu este ilustrat in imaginea 8. Avind un singur set PROIECT_ANG, inseamna ca fiecare angajat lucreaza la un singur proiect. Sa presupunem ca un angajat poate sa lucreze la mai multe proiecte simultan. Relatia de tip M:N care rezulta nu poate fi reprezentata direct. Va trebui sa cream un tip de inregistrare intersectie, P_A_INTERSECT, pentru a pastra legatura dintre un angajat si toate proiectele la care lucreaza. Aceasta inregistrare va contine CODP#, CODA# si date de intersectie cum ar fi numarul de ore pe care un angajat le lucreaza pentru un proiect sau plata pe care o primeste pentru acel proiect.

CODD DEND COD_SEF#

 
DEPT


DEP_INTERSECT

PROIECT  ANGAJAT


PROIECT_INTERSECT ANG_INTERSEC ANG_COPII


P_A_INTERSECT

CODA# NUME VIRSTA

 
COPII


Im. 8 Modelul retea

In modelul retea, toate seturile sint implementate prin pointeri. Uzual, se creeaza o lista inlantuita unde realizarea proprietar este capul listei. Proprietarul face legaturi cu primul membru, care se leaga de al doilea si asa mai departe pina la ultimul membru. Ultimul membru face legaturi cu proprietarul, formind un lant.

In imaginea 9.a) este redata o reprezentare a unei realizari DEPT_STU si in imaginea 9.b) se arata cum sint reprezentate toate realizarile. DEPT si STU sint doua fisiere separate cu pointerii care le conecteaza. Desi am reprezentat pointerii prin sageti, ei sint adrese logice sau chei ale inregistrarilor tinta.

O inregistrare membru a unui set poate avea trei pointeri:

spre inregistrarea urmatoare (next)

spre inregistrarea anterioara (prior)

spre proprietar (owner)

Chiar daca utilizam numai pointeri next, daca o inregistrare apartine mai multor seturi, ea va contine mai multi pointeri care sa arate locul ei in fiecare din aceste seturi.

Numarul de pointeri ceruti chiar pentru o aplicatie simpla poate fi foarte mare. In unele sisteme retea, proiectantul poate alege tipul pointerilor, specificindu-i in schema.


S1002

 
a)


DEPT

MATEMATICA

 

ISTORIE

 

INFORMATICA

 

GEOGRAFIE

 



b)

S1020

 


STU

Im. 9 Reprezentarea realizarilor

2 Seturi speciale

Un set are un tip de inregistrare proprietar si numai un tip de inregistrare membru, dar este posibil sa avem tipuri multimembru pentru seturi. De exemplu, sa presupunem ca dorim sa pastram relatia intre DEPT si inregistrarile STU si FAC in acelasi set. Putem defini setul DEPT_PERS avind tipul proprietar DEPT si tipurile membre STU si FAC, ca in imaginea 10.a).

In fiecare realizare a acestui set vom avea o inregistrare departament ca proprietar si orice numar de inregistrari student si facultate (Im. 10.b).

Alt tip special set este setul singular. Acesta este folosit cind dorim sa tratam toate inregistrarile unui tip particular ca si cum ar fi membri ai unui set, pentru ca setul membrilor poate fi utilizat pentru a impune o ordine ce poate fi utila in manipularea datelor. Pentru ca toate inregistrarile din set sint de acelasi tip, nu exista o inregistrare proprietar reala, astfel ca vom specifica sistemul ca fiind proprietar al setului. Nu este permisa decit o singura realizare a fiecarui astfel de set.

Alt tip special este setul dinamic. Acesta nu are inregistrari membre permanent asociate lui. La momentul executiei, un program de aplicatie alege inregistrarile care-I sint necesare pentru a le inlocui in set. Cind programul se termina, inregistrarile nu mai apartin setului.


DEPT_PERS


Im. 10 (a, b) Reprezentarea seturilor si realizarilor

Implementarea modelului retea

Modelele retea sint implementate folosind doua modalitati:

Implementarea prin pointeri. Foloseste conexiunile secventiale de tip pointer si o structura de tip lista. Fiecare inregistrare din retea poate avea o combinatie din urmatoarele tipuri de pointeri:

pointer catre prima (ultima) inregistrare din lista, pozitia lui fiind indicata de sensul sagetii

pointer catre urmatoarea inregistrare (sau catre cea anterioara)

pointer catre inregistrarea parinte sau proprietar

pointer catre fiecare inregistrare copil.

Implementarea prin harta de biti (bit map). In cazul relatiei de tipul M:N se foloseste harta de biti care este o matrice creata pentru fiecare relatie. Inregistrarile de pe linie sint inregistrari sursa, iar cele de pe coloane sint cele destinatie. Daca la intersectia dintre linia X si coloana Y avem 1 in matrice, atunci inseamna ca intre inregistrarile respective exista o relatie (cu sensul X Y); daca avem 0, atunci cele doua inregistrari nu au legatura. Hartile de biti sint structuri de date avantajoase di urmatoarele motive:

orice tip de inregistrare poate fi inclusa pe linii/coloane

relatiile 1:1, 1:M, M:N si M:1 pot fi reprezentate

liniile si coloanele suporta operatorii algebrei booleene ("and", "or", "not").

Dest.

Vinzari

Inreg. sursa

y

Produse

X

Dezavantajele modelului retea

Este un model complex, dificil de folosit.

Implementarea lui se face pentru limbaje de prelucrare secventiala a inregistrarilor, ceea ce determina o prelucrare dificila a bazelor de date, o viteza redusa de lucru si spatiu de memorie ocupat ineficient.

Deoarece o retea este o extensie a unei ierarhii, proprietatile semantice ale modelului retea sint similare cu cele ale modelului ierarhic. De aceea, dependentele din retea sint putin clare, din cauza posibilitatii existentei mai multor parinti/proprietari.

Modelul retea nu poseda un mod explicit de tratare a agregarii semantice, relatiile intre inregistrari fiind folosite atit pentru reprezentarea semantica cit si pentru alte scopuri. Unele limbaje pentru modelul retea recunosc insa mostenirea atributelor unor cimpuri.





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Comentarii literare

ALEXANDRU LAPUSNEANUL COMENTARIUL NUVELEI
Amintiri din copilarie de Ion Creanga comentariu
Baltagul - Mihail Sadoveanu - comentariu
BASMUL POPULAR PRASLEA CEL VOINIC SI MERELE DE AUR - comentariu

Personaje din literatura

Baltagul – caracterizarea personajelor
Caracterizare Alexandru Lapusneanul
Caracterizarea lui Gavilescu
Caracterizarea personajelor negative din basmul

Tehnica si mecanica

Cuplaje - definitii. notatii. exemple. repere istorice.
Actionare macara
Reprezentarea si cotarea filetelor

Economie

Criza financiara forteaza grupurile din industria siderurgica sa-si reduca productia si sa amane investitii
Metode de evaluare bazate pe venituri (metode de evaluare financiare)
Indicatori Macroeconomici

Geografie

Turismul pe terra
Vulcanii Și mediul
Padurile pe terra si industrializarea lemnului


Termeni si conditii
Contact
Creeaza si tu