Documente Academic
Documente Profesional
Documente Cultură
Specialitatea:
Informatică
Referat
la cursul Istotria și metodologia Informaticii
A efectuat:
st. gr. C2I2 Morari Dumitru
A verificat:
dr. conf. Andrei Braicov
Chişinău, 2019
Cuprins
Introducere...............................................................................................................3
1. Definiția unui SGBD. Tipuri de SGBD-uri..........................................................5
2. Obiectivele unui SGBD.......................................................................................8
3. Conceptul de proiectare a unei baze de date.......................................................10
Introducere
Exista afirmatii conform carora sistemul de baze de date îsi are radacinile în anii '60, în
proiectul de aselenizare Apollo. Deoarece pe atunci nu exista un astfel de sistem, North
2
American Aviation (actualmente Rockwell International) a dezvoltat, în calitate de
principal colaborator la proiect, un pachet de programe cunoscut sub numele GUAM
(Generalized Update Access Method), care se baza pe date organizate în mod ierarhic.
Modelul de date ierarhic îsi are originea în acest proiect.
La mijlocul anilor '60, un pas înapoi s-a facut prin elaborarea sitemului IMS (Information
Management System), de catre IBM în colaborare cu NAA, pornind de la
sistemul GUAM. Pasul înapoi se datoreaza faptului ca manipularea ierarhiilor de date a
fost restrânsa la organizarea secventiala a datelor (o cerinta dictata de piata la acel
moment).
In aceeasi perioada General Electric a dezvoltat sistemul IDS (Integrated Data Store).
Conducator de proiect: Charles Bachmann. Proiectul a condus la modelul de date retea
(numele se datoreaza ca si în modelul precedent, modului de organizare a datelor).
Conceptul de baza de date s-a definit în 1969 cu ocazia prezentarii primului proiect de
raport CODASYL (Raportul final s-a prezentat în 1971). Ideea principala în organizarea
datelor se baza pe existenta a trei componente de baza:
3
În 1978 E.F.Codd de la IBM Research Laboratory a elaborat o lucrare care a avut o
influenta covârsitoare în dezvoltarea bazelor de date. Lucrarea trata despre modelul de
date relational.
De aici încolo s-au proiectat multe sisteme dintre care mentionam System R dezvoltat la
IBM's San Jose Research Laboratory din California, la sfârsitul anilor '70. Acest proiect a
dus la:
În cadrul oricărei organizaţii este necesar ca resursa de date să fie bine definită şi
documentată, bine organizată şi controlată, partajabilă şi relevantă pentru deciziile luate
în cadrul organizaţiei.
4
În diferite surse găsim mai multe definiții cu privire la SGBD:
Sistemul de Gestiune al Bazei de Date (SGBD) reprezintă un pachet de
programe specializat pentru definirea, crearea, întreţinerea şi accesul controlat la baza de
date.
Un SGBD = o interfaţă între utilizatori şi BD, ce permite: crearea, actualizarea
şi consultarea BD.
SGBD = instrument de asamblare, codificare, aranjare, protecţie şi regăsire a
datelor în BD
Bazele de date sunt gestionate unitar prin programe dedicate, numite sisteme de
gestiune a bazelor de date(SGBD).
Facilitatile unui SGBD sunt:
• memorarea datelor pe suportul extern prin sistemul de gestiune a fişierelor;
• gestiunea datelor şi a legăturilor dintre ele în vederea regăsirii rapide
prin intermediul sistemului de acces (SGBD intern);
• introducerea şi extragerea datelor dinspre exterior în forma cerută de utilizator
prin intermediul SGBD–ului extern.
5
- sisteme avansate, care se referă la sistemele orientate obiect, la cele deductive,
multimedia, active, etc.
SGBD de tip ierarhic (hierarchical database) şi reţea(network database)
reprezintă din punct de vedere istoric primele generaţii de SGBD. În modelele ierarhice şi
reţea datele sunt reprezentate la nivel de articol prin legături ierarhice de tip arbore,
respectiv de tip graf. Structurile de date corespunzătoare acestor modele pot fi descrise la
nivel logic cu ajutorul unei structură de date abstract numit diagramă. Diagrama este în
acest caz un graf orientat prin care se reprezintă tipuri de entităţi şi legăturile funcţionale
dintre acestea. Sistemele de gestiune a bazelor de date bazate pe modelul de date reţea,
respectiv cel ierarhic, poartă numele de sisteme navigaţionale şi au fost dezvoltate în
perioada 1960-1970.
A doua generaţie de SGBD o reprezintă modelul relaţional care tratează entităţile
ca relaţii. Sistemele de Gestiunea Bazelor de Date Relaţionale sunt caracterizate de
structuri de date simple şi intuitive, de operatori care se aplică relaţiilor pentru a defini,
căuta, şi reactualiza datele. Bazele de date relaţionale asigură independenţa completă a
descrierii logice a datelor în termeni de relaţii şi în descrierea fizică a datelor în termen de
fişiere. În prezent există câteva sute de sisteme SGBD relaţionale pentru toate tipurile de
calculatoare. Modelul relaţional asigură o independenţă completă în ceea ce priveşte
descrierea logică şi fizică a datelor. În plus SGBD relaţionale pun includ limbaje
specializate pentru descrierea şi manipularea datelor. Modelul relaţional are capacităţi
limitate de modelarea datelor. SGBD relaţionale nu folosesc obiecte complexe şi
dinamice, nu realizează gestiunea distribuită a datelor şi nici gestiunea de cunoştinţe.
Conceptul de programare orientată obiect sau programarea calculatoarelor cu
ajutorul obiectelor utilizează conceptele de obiect şi clasă de obiecte. Obiectul este
definit de o mulţime de proprietăţi numite atribute şi are un anumit comportament care în
cazul obiectelor folosite în programare se concretizează prin metode, care sunt programe
care se execută în mod automat atunci când în mediul extern sau cel extern al obiectului
apare un anumit eveniment. Numim obiect o entitate unic identificabilă, care conţine atât
atributele care definesc starea unui obiect din lumea reală, cât şi acţiunile asociate
acestuia. Obiectele de acelaşi tip formează o clasă de obiecte care reprezintă o
generalizare a noţiunii de tip de dată. Clasa include definiţia datelor şi a metodelor.
Conform principiuluiîncapsulării datelor, datele clasei sunt vizibile doar metodelor
clasei, iar conform principiului moştenirii sau al derivării o clasă poate fi definită
folosind o clasă existentă. Conceptul de încapsulare presupune că un obiect conţine atât
structura de date, cât şi mulţimea de operaţii care pot fi utilizate pentru al manipula.
Ascunderea informaţiilor semnifică separarea aspectelor externe ale unui obiect de
detaliile sale interne, care sunt ascunse de lumea exterioară. În acest mod, detaliile interne
ale unui obiect pot fi modificate fără a afecta aplicaţiile care îl utilizează cu condiţia ca
detaliile externe să rămână neschimbate. Includerea tehnicilor de programare orientată
obiect în domeniul bazelor da date a condus la apariţia Sistemelor de Gestiune a
Bazelor de Date Orientate Obiect, care realizează o modelare superioară a informaţiei
luând în considerare aspectele dinamice şi integrarea descrierii structurale şi
comportamentale. Prin utilizarea principiului programării orientate obiect în domeniul
bazelor de date relaţionale a apărut Sistemele de Gestiune a Bazelor de Date
Relaţionale Orientate Obiect.
O relaţia este o mulţime de înregistrări ce reprezintă fapte. Cunoştinţele sunt
aserţiuni generale şi abstracte asupra faptelor. Pe baza cunoştinţelor se deduc fapte noi
prin deducţie plecând de la fapte cunoscute. Pentru a rezolva problema gestiunii de
6
cunoştinţe au apărutbazele de date deductive, care utilizând programarea logică
gestionează cunoştinţe relativ la baze de date. Un Sistem de Baze de Date
Deductivposedă un limbaj de definire a datelor care permite definirea structuri
predicatelor sub formă de relaţii şi constrângeri de integritate asociate, un limbaj de
manipulare a datelor care permite pe lângă actualizarea datelor şi formularea de cereri, un
limbaj de reguli de deducţie care să permită construirea predicatelor derivate.
Sistemele distribuite reprezintă calculatoare interconectate printr-o reţea de
comunicaţie utilizate pentru un scop global. Gestionarea datelor aflate pe calculatoare
diferite, eterogene din punctul de vedere al sistemului de operare folosit se realizează cu
ajutorul unei baze de date distribuite.Bazele de date distribuite sunt sisteme de baze
de date cooperante care sunt rezidente pe calculatoare diferite şi situate în locuri în locaţii
diferite. Sistemul de gestiune al unei baze de date distribuite face posibil accesul
programelor de aplicaţie la date rezidente pe mai multe calculatoare fără ca localizarea
datelor să fie cunoscută. Bazele de date distribuite folosesc ca instrument principal pentru
prelucrarea datelor distribuite modelul relaţional.
Integrarea mai multor baze de date autonome şi eterogene conform unei scheme
globale cu scopul de a realiza accesul uniform şi integrat la fiecare din bazele de date
componente a condus al conceptul de sistem multibază de date. Avantajul major al
acestui model constă în faptul că printr-o singură interogare pot fi accesate date din mai
multe baze de date fără a afecta aplicaţiile care manipulează datele din fiecare bază de
date componentă a sistemului integrat. Fiecare bază de date din sistemul integrat poate
folosi propriile limbaje de interogare.
Bazele de date permit stocarea unei cantităţi foarte mari de informaţie, care poate
fi folosită în mod pentru elaborarea deciziilor operative, dar şi a celor strategice. Pentru
elaborarea deciziilor operative se folosesc date aferente activităţii curente, date aferente
unei perioade scurte de timp. Acestea sunt generate şi preluate în sistem în mod dinamic
pentru optimizarea procesului de decizie. Prelucrarea acestor date se realizează în pe baza
unor scenarii de tip procesarea de tranzacţii în timp real (OLTP – On
Line Transaction Processing). Necesitatea analizării unor cantităţi foarte mari de date a
condus la conceptul de magazie de date (Data Warehouse), care utilizează pentru
atingerea acestui scop scenarii de tip procesare analitică în timp real (OLAP – On
Line Analytical Processing). Baza de date analitică permite realizarea de interogări
multidimensionale instantanee, fără a fi necesar ca acestea sa fie definite anterior.
Magazia de date este proiectată pentru a facilita analiza multidimensională a datelor şi
reprezintă un sistem care include informaţii despre o organizaţie structurate în mai multe
baze de date, numite în acest caz rafturi de date (Data Marts). Data
Warehouse reprezintă o bază de date proiectată pentru a facilita analiza datelor fiind
orientată spre dimensiuni. Structurile de date multidimensionale sunt vizualizate cel mai
bine sub forma unor cuburi de date şi a unor cuburi în cadrul cuburilor. Fiecare faţă a
unui cub reprezintă o dimensiune. Bazele de date multidimensionale reprezintă o
modalitate compactă pentru vizualizarea şi manipularea elementelor de date care pot avea
multe inter-relaţii.
2. Obiectivele unui SGBD
7
In aceste conditii, necesitatea acuta de informare trebuie satisfacuta tinand seama de o
serie de cerinte prin care sa se asigure:
-minimizarea costului procesului de prelucrare a datelor; cresterea vitezei de
raspuns la întrebarile solicitate de utilizatori;
-adaptarea facila a sistemului informatic la evolutia in timp a sistemului
informational din care face parte;
-posibilitatea raspunsului la anumite intrebari neanticipate de catre proiectantii de
sistem;
-posibilitatea folosirii sistemului de informare dispunand de un minim de cunostinte
despre modul lui de organizare in general si despre informatica in special;
-integritatea si securitatea datelor etc.
In acest context, sistemului de gestiune al bazei de date ii revin o serie de obiective, cum
sunt:
1. Asigurarea independentei datelor.
Asa cum am aratat mai devreme, acest obiectiv consta in linii mari din indeplinirea
urmatoarei cerinte: modificarile care se fac la un anumit nivel de structura de date nu
trebuie sa fie 'vizibile' la nivelul de organizare imediat superior.
8
- utilizarea unui limbaj cat mai apropiat de limbajul natural, cu posibilitatea
exploatarii bazei de date in regim conversational. Aceasta ar oferi posibilitatea
exploatarii in mod facil a bazei de date si de catre utilizatorii neinformaticieni.
4. Sporirea gradului de securitate a datelor impotriva accesului neautorizat la ele.
Administratorul bazei de date poate prevedea ca accesul la baza de date sa se faca numai
prin canale corespunzatoare, si poate, totodata, defini verificari de autorizare care sa se
realizeze oricand se incearca accesul la anumite date.
rezultatul;
13. coeren
SQL.
9
3. Conceptul de proiectare a unei baze de date.
In esenta, conceptul de baza de date poate fi definit ca fiind o colectie partajata de date
aflate în interdependenta logica (impreuna cu o descriere a acestor date si a relatiilor
dintre ele), colectie desemnata pentru a rezolva nevoia de informatizare a unei
intreprinderi (sau organizatii).
Funcţii principale:
10
– Interogarea bazelor de date
– Actualizarea datelor
– copii de siguranţă
3. modificarea unor date deja existente in baza de date – actualizarea bazei de date;
- un limbaj de programare;
11
- verificarea datelor introduse – posibilitatea introducerii cerintelor de validare a
datelor;
- nivelul logic de vizualizare (view) sau nivelul extern. Este dat de viziunea
programatorului de aplicatii, care realizeaza programele de aplicatii pentru manipularea
datelor la nivel de structura logica (subschema) corespunzatoare descrierii datelor
aplicatiei;
-nivelul conceptual (global). Este dat de viziunea administratorului bazei de date, care
realizeaza structura conceptuala (schema) corespunzatoare descrierii întregii baze de date
si administreaza componentele bazei de date. Acest nivel descrie ce date sunt memorate
în baza de date si ce relatii sunt stabilite între date. Nivelul conceptual reprezinta:
12
Nivelul extern de descriere a BD se face de către Administratorul aplicaţiei, care:
• defineşte schema externă
• defineşte regulile de corespondenţă cu schema conceptuală
Schema externă face referire la datele necesare unui utilizator sau unui grup de
utilizatori.
13
Ea este o sub-schemă (o imagine) a schemei conceptuale.
Schemele externe constituie sursa pentru întocmirea schemei conceptuale.
Exemplu:
14
Proiectarea BDR. Dezvoltarea unei aplicaţii cu baze de date:
15
Integritatea este starea existentă atunci când calitatea informaţiei stocate este protejată de
contaminare sau degradare cu informaţie de slabă calitate.
Date nevalide Nu toate datele introduse şi stocate sunt valide; în această situaţie,
verificările şi procesele de validare ce asigură coerenţa bazei de
date, lipsesc.
Date redundante Redundanţa apare atunci cînd aceleaşi date sunt înregistrate şi stocate în
mai multe locuri. Acest lucru poate conduce la incoerenţa datelor
şi la anomalii ale acestora.
Date incoerente Apar atunci când date redundante, ce se găsesc în mai multe locuri, nu
prezintă acelaşi conţinut.
Anomalii ale datelor Apar atunci când există date redundante ca urmare a unei proiectări
defectuoase. În aceste situaţii este posibil ca o apariţie a datei
redundante să fie modificată, în timp ce alte apariţii rămân
neschimbate.
Incoerenţa citirii Un utilizator nu citeşte întotdeauna ultima dată salvată, iar modificările
datelor facute de acesta sunt vizibile altor utilizatori înainte de salvare.
Date neconcurente Mai mulţi utilizatori pot accesa şi citi aceleaşi date simultan, dar în felul
acesta se pierde coerenţa citirii.
16
descrieri de trigger-e, etc.) dar nu şi fiabilitatea lor, care ţine de modalitatea în care
s-a organizat şi desfăşurat procesul de culegere a datelor.
Tranzacţia reprezintă o secvenţă liniară de operaţii executate asupra unei baze de date
partajate de mai mulţi utilizatori.
Tranzacţiile se folosesc, de obicei, într-o procedură în care se execută mai multe operaţii
de actualizare a bazei de date şi se doreşte garantarea faptului că toate operaţiile s-au
executat cu succes.
În cazul apariţiei unei erori la una din actualizări toate cele anterioare se pot anula.
Când o tranzacţie actualizează mai multe înregistrări aparţinând uneia sau mai multor
tabele, o aplicaţie informatică trebuie să se asigure că toate înregistrările au fost
actualizate sau că toate au rămas în starea iniţială.
5. Clasificarea SGBD-urilor
Clasificarea SGBD se poate realiza din mai multe puncte de vedere.
17
2. Din punctul de vedere al limbajului pe care il utilizeaza, sunt: sisteme cu limbaj
gazda; sisteme cu limbaj autonom.
Sistemele cu limbaj gazda realizeaza activitatile de creare, actualizare si interogare
a bazei de date, utilizand limbajele de nivel în alt sau extensii ale acestora, proprii
sistemului de calcul pe care se implementeaza baza de date. Avantajul acestor
sisteme consta în posibilitatile sporite ce le ofera limbajele de nivel în alt la
elaborarea unor proceduri complexe. Sistemele cu limbaj gazda prezinta
dezavantajul ca formularea cerintelor nu este atit de simplificata ca în cazul
sistemelor cu limbaj autonom.
- SGBD-uri distribuite – baze de date situate in mai multe locatii din punct de
vedere fizic si legate intre ele din punct de vedere logic.
18
Utilizatorii
Sistemele de gestiune a bazelor de date au trei categorii de utilizatori:
- programatorii;
19
Bibliografie:
1. M. Velicanu, I. Lungu s.a. – Sisteme de baze de date – teorie şi practică, ed. Petrion,
Bucureşti, 2003.
2. J. Date – An introduction to database systems, Ed. Addison Wesley, 2004. 3. M.
Velicanu – Dicţionar explicativ al sistemelor de baze de date, Ed. Economică, Bucureşti,
2005.
4. A. Bara, I. Botha, V. Diaconiţa, I. Lungu, A. Velicanu – Baze de date. Limbajul
PL/SQL, ed. ASE, Bucureşti, 2009.
5. Pribeanu Costin, Baze de date şi aplicaţii, Editura MatrixRom
20
21