Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




SISTEME DE GESTIUNE A BAZELOR DE DATE

Informatica




SISTEME DE GESTIUNE A BAZELOR DE DATE

O baza de date (BD) este o multime structurata de elemente de date si de legaturi logice dintre ele ce descriu un univers real sau conceptual (o īntreprindere, o organizatie, o societate de asigurari, eveniment etc.), ce pot fi accesate simultan de mai multi utilizatori.

Un sistem de gestiune al unei baze de date (SGBD) este un software utilizat pentru crearea, īntretinerea si exploatarea a unei baze de date si care da posibilitatea mai multor utilizatori sa aiba acces simultan la datele care o compun.

1.1. Istoria sistemelor de gestiune a bazelor de date

Sistemele de gestiune a bazelor de date (SGBD) au o vechime de aproape patru decenii. Īn anul 1960 s-a realizat prima dezvoltare a sistemelor de gestiune ale fisierelor (SGF) pentru memoriile secundare direct accesibile si partajabile, care a constituit inima unui SGBD. Prima generare a unui SGBD a fost marcata de separarea descrierii datelor de programele de aplicatii si de aparitia limbajelor de manipulare. Aceste SGBD permit sa se caute date grupate īn articole, īn structuri arborescente si au ca obiectiv optimizarea memorarii datelor pe suport si reducerea timpului de acces. Din aceasta generatie fac parte IMS, DBMS elaborate de IBM, SOCRATE elaborat de CII etc.

A doua generatie de SGBD care a aparut dupa anul 1970 se bazeaza pe modelul relational dat de E.Codd vizeaza simplificarea īntelegerii, optimizarea structurilor de date si optimizarea accesului la date pentru utilizatorii externi. Ele ofera limbaje asertionale bazate pe logica care specifica datele pe care dorim sa le obtinem. Acest sistem da un mod eficient de structurare bazat pe teoria normalizarii si determina cel mai bun plan de acces la informatiile pe care dorim sa le obtinem. La īnceputul deceniului al IX-lea al secolului XX, termenii de model relational, baza relationala de date, calcul relational, au devenit uzuali īn metodologia proiectarii si utilizarii bazelor de date. Aceasta generatie, a carei fundamentare teoretica se bazeaza pe teoria relationala a cunoscut cea mai rapida dezvoltare. Primele sisteme din aceasta generatie au fost comercializate dupa anul 1980. Pentru crearea modelului relational al bazelor de date E.F.Codd a primit īn anul 1981 premiul Turing pentru informatica. La raspāndirea rapida a modelului relational au contribuit factorii urmatori ;

omogenitatea reliefata de structurile de date si de memorare;

bazele de date relationale pot fi imaginate independent de structura sistemului de calcul. Multimile utilizate cel mai mult īn practica sunt tabelele bidimensionale. Īn acest caz cautarea si prelucrarea datelor nu depind de modul de organizare si memorare a datelor īn calculator.

din punct de vedere matematic, bazele relationale de date sunt instantieri distincte de scheme de relatii definite anterior din multimi de atribute (elemente de date).

Cu alte cuvinte, o baza relationala de date este un model finit īn sensul logicii elementare. Modelul relational permite realizarea de diferite operatii algebrice. Teoria bazelor relationale de date devine domeniul de aplicare a logicii matematice si al algebrei moderne, care opereaza cu un formalism exact.

O a treia generatie care s-a preconizat dupa anul 1990 este aceea a bazelor de date obiectuale ( orientate obiect). Sistemele de gestiune a bazelor de date obiectuale (SGBDOO) permit administrarea datelor complexe din domeniile: ingineria software, sisteme multimedia, gestiunea documentelor, CAD etc. Aceste sisteme trebuie sa integreze sistemele relationale de baze de date existente. SGBD-urile relationale au fost dezvoltate pentru aplicatii de gestiune īn care datele sunt separate de programe. Acestea nu cuprind notiunile de obiect si clasa. Limbajele de interogare ale SGBD-urilor furnizeaza multimi de tupluri programelor de aplicatii care sunt apoi transformate īn structuri complexe.

SGBDOO-urile din generatia a III-a au fost realizate pe doua cai. Prima consta īn extinderea modelului relational. Extensia se face prin introducerea de noi concepte ca: obiect, clasa, operator atasat unei proceduri, integrare si generalizare. Operatorii sunt considerati ca atribute ale unei relatii si permit definirea de noi atribute. Operatorii pot fi continuti īn cererile de interogare exprimate prin procedurile asociate. Īn acest caz, majoritatea SGBDOO concep atributele ca obiecte ne apartinānd tipurilor elementare de baza, ceea ce face ca bazele de date orientate pe obiect sa nu respecte restrictia impusa de prima forma normala, deoarece atributele nu mai sunt atomice. Īnsa dependentele multivoce permit introducerea de forme normale adecvate.

A doua abordare, se bazeaza pe modele obiectuale īn care un obiect este definit fie de o relatie, fie definit recursiv. Atributele unui obiect pot fi alte obiecte. De exemplu, sintaxa lui Gem Stone integreaza majoritatea functiilor SGBDR si un limbaj orientat pe obiecte pentru a putea defini schema bazei de date, pentru a manipula obiecte si a codifica aplicatii. Legatura dintre baza de date si limbajul de programare permite combinarea avantajelor programarii orientata pe obiecte a BDOO, cu proprietatile de integritate si partajare. Legaturile dintre obiecte sunt conservate la nivelul BDOO si permit luarea īn considerare a dinamicii obiectelor din lumea reala, stocānd o data cu obiectele si operatiile pe care le suporta.

1.2. Arhitectura globala a sistemelor de gestiune a bazelor de date

Un sistem de gestiune a bazelor de date (SGBD) este compus din module, fiecare avānd īn cadrul sistemului sarcini specifice. Anumite functii pentru sistemul de baze de date sunt asigurate de nucleul sau si de nucleul sistemului de operare. Cele mai multe SGBD asigura un minim de functii de baza cu ajutorul carora sunt dezvoltate alte functii. Astfel la conceperea unei baze de date trebuie sa se tina seama de interfetele dintre diverse module. Schema din figura 1.1 schiteaza structura unui SGBD.

Īn continuare se prezinta pe scurt functiile fiecarui modul din structura SGBD.

- Gestionarul bazei de date realizeaza interfata dintre programele de aplicatii sau de consultare si datele fizice ale bazei de date .

- Gestionarul de fisiere specifica alocarile de memorie pe disc si structurile de memorare care servesc la reprezentarea informatiilor pe disc.

- Procesorul de consultare traduce instructiunile limbajului de consultare īn instructiuni īntelese de gestionarul bazei de date. Transpune interogarile utilizatorului īntr-o forma echivalenta optimizata, īn vederea determinarii celor mai bune strategii de cautare.

- Definirea schemelor bazei de date (schemei conceptuale) si a legaturilor dintre ele se efectueaza de administratorul BD, cu ajutorul unui limbaj de definire a datelor (LDD) prevazut cu un compilator ce permite crearea dictionarului de date. Structura de date este o multime de elemente de date, de legaturi care exista īntre ele si de operatii efectuate cu ele. 

- Precompilatorul LMD (limbaj pentru manipularea datelor) genereaza coduri obiect ale programelor realizate cu ajutorul LMD. LMD permite ca programatorii de aplicatii si neinformaticienii sa manipuleze date puse īn evidenta de scheme de orice nivel.

Dictionarul de date este dat de o multime de scheme si de legaturi dintre schemele asociate ale bazei de date, de descrierile semnificatiilor datelor si a restrictiilor pe care acestea trebuie sa le satisfaca. Dictionarul de date poate fi el īnsusi implementat ca o baza de date. El constituie atunci o metabaza, adica o baza care descrie o alta baza.

Fig. 1.1- Arhitectura SGBD

Utilizatorul este o persoana, care de la un terminal are acces la baza de date folosindu-se de o multime de programe de aplicatii sau de comenzile unui limbaj de consultare. Accesul la baza de date se realizeaza fie pornind de la un program de aplicatii redactat īntr-un limbaj (C, Java ,Pascal etc.) care accepta primitive (secvente de instructiuni de program) ce permit accesul la baza de date, fie de la un terminal utilizānd un limbaj specific LMD. Pe de alta parte daca LMD de nivel īnalt este utilizat īntr-o maniera interactiva atunci acesta se numeste limbaj de interogare ( LI).

Administratorul BD raspunde pe lānga activitatea de definire a schemei BD, de creare si manipulare. Pentru aceasta administratorul BD dispune de un software specializat si are urmatoarele sarcini:

- concepe schema bazei de date ( o descriere prin intermediul LDD). Schema trebuie sa fie independenta de structura de memorare (stocarea fizica) si de limbajul īn care se descriu aplicatiile. El odata cu schema asociaza si restrictiile de integritate si ce garanteaza consistenta datelor ce sunt īnregistrate īn BD;

- decide tehnicile de acces si de implementare fizica;

- stabileste legaturile SGBD-utilizator prin descrierea subschemelor care sunt 

derivate din schema BD. Subschema permite definirea autorizatiilor de acces;

- defineste strategiile de reluare īn caz de incident;

- realizeaza īn consecinta modificarea structurii BD.

SGBD trebuie sa permita utilizatorului sa genereze versiuni de BD performante tinānd cont de īnmultirea utilizatorilor. El dispune de un software care īi restituie descrierea schemei BD ce este īnregistrata īn dictionarul BD.

1.3. Obiective

1.3.1. Abstractizarea si structurarea datelor

Prezentarea sub o forma abstracta si structurata a datelor constituie un important obiectiv al unui S.G.B.D. Elaborarea de structuri complexe de date īnainte de memorarea lor īn fisierele bazei de date este necesara pentru marirea eficientei acesteia. Structura bazei de date este determinata de o multime de scheme (tipuri de date), relatii, legaturi īntre date, restrictii pe care datele trebuie sa le satisfaca si de semantici. Descrierea unei baze de date trebuie judecata pe baza unei modelarii. Un model consta dintr-o multime de concepte ce permit descrierea corecta a structurii bazei de date. Cele mai multe din modele include si operatori specifici de cautare si actualizare īntr-o baza de date. Modelele de date bazate pe tipuri de concepte ce descriu baza se clasifica īn:

modele de date fizice sau de nivel inferior ce cuprind concepte ce descriu datele asa cum sunt memorate (ordinea īnregistrarilor etc.);

modele logice ( conceptuale) sau de nivel īnalt orientate pe "īnregistrarii" sau pe "obiecte" descriu datele pentru clase mari de utilizatori.

Ele se caracterizeaza prin flexibilitatea descrierii si explicitarii structurilor si restrictiilor de date. Modele de date de nivel īnalt utilizeaza concepte de: atribute, relatii, entitati si obiecte. Entitatea este un obiect fizic sau conceptual care este reprezentat īntr-o baza de date. Legaturile dintre obiecte sunt usor de reprezentat cu ajutorul modelelor de nivel īnalt numite modele orientate-obiect. Dintre modelele implementate pāna īn prezent amintim: modele ierarhice, modele retea, modele relationale, modele orientate obiect. Primele trei reprezinta datele utilizānd structura de īnregistrare, de aceea sunt frecvent numite modele bazate pe īnregistrarii.

Independenta fizica si logica

Independenta structurilor fizice permite stocarea structurilor de memorare dintr-un univers real sau conceptual, independent de structurile de date cu scopul realizarii unui acces simplu la date. Independenta logica se refera la posibilitatea de a adauga si a modifica īnregistrarii si scheme fara a rescrie programele existente.

Reducerea redundantei si inconsistentei

Crearea fisierelor se face īn general īn perioade de timp diferite. Aceasta face ca aceleasi informatii sa fie replicate īn mai multe fisiere. Aceste redundante cresc inutil volumul global al bazei de date. Timpul de acces creste. Creste si riscul de a avea inconsistenta īn datele memorate. Faptul ca, copiile ale acelorasi date stocate īn diverse locuri nu concorda īntre ele, deoarece ele nu au fost actualizate īn acelasi timp determina inconsistenta.

Optimizarea accesului la date

SGBD-ul trebuie sa fie prevazut cu un procesor de optimizare a operatiilor exprimate de informaticieni cu ajutorul unui limbaj de manipulare si de neinformaticieni cu ajutorul unui limbaj neprocedural. Limbajele neprocedurale permit utilizatorilor sa descrie ceea ce vor sa obtina fara a indica modul cum se obtine. Posibilitatea de a manipula date cu ajutorul unor limbaje neprocedurale si de neinformaticieni, independent de implementarea lor constituie o generalizare a manipularii datelor.

Securitatea si confidentialitatea datelor

Datele trebuie protejate de accese neautorizate si rau intentionate. SGBD-ul trebuie sa gestioneze accesul la informatii si la tipurile de operatii pe care fiecare utilizator le poate efectua si sa valideze aceste operatii. De asemenea se realizeaza o protejare prin parolare si criptare īmpotriva accesului neautorizat.

Partajabilitatea datelor

Partajabilitatea datelor determina folosirea bazei simultan de mai multe aplicatii. Asigura gestiunea tranzactiilor si a prelucrarilor concurente. Tranzactia este o unitate de prelucrare care transforma o instanta consistenta a bazei īn alta instanta consistenta. SGBD-ul trebuie sa paralelizeze sau sa detecteze cazurile de interblocare (cānd o tranzactie asteapta date detinute de alte tranzactii).

1.4. Scheme si instantieri

Īn orice model este important sa se faca o distinctie īntre descrierea unei BD si BD īnsasi. Descrierea bazei de date formeaza schema bazei de date. O schema a BD este specificata īn timpul proiectarii. Cele mai multe modele cuprind anumite conventii si metareguli pe baza carora se construiesc schemele bazei de date care sunt numite diagrame schema. Fiecare element din diagrama schemei se numeste componenta constructiva (constructor de schema ) a schemei.

Figura 1.4.1

Īn figura 1.4.1 se da o diagrama schema pentru o baza de date de studenti care da schema fiecarei relatii.

O diagrama a schemei afiseaza numai anumite aspecte ale schemei ca: numele relatiei, elementele de date si anumite tipuri de restrictii. Totusi īn diagrama schemei BD nu sunt specificate tipul fiecarui element de date si alte tipuri de restrictii, de exemplu constructia, "un student īn anul I informatica trebuie sa urmeze cursul de Sisteme de Operare". Datele actuale dintr-o BD pot fi schimbate relativ frecvent; de exemplu īn BD din figura 1.4.1 se adauga noi studenti sau noi note pentru un student.

Datele dintr-o BD la un anumit moment de timp formeaza o instantiere a BD ( ocurenta sau stare), care corespunde unei scheme.

Īn orice moment cānd vom insera sau sterge valori, vom schimba o instantiere a BD cu o alta instantiere. Distinctia īntre schema bazei de date si instantierea bazei de date este foarte importanta. Cānd definim o noua BD noi vom specifica schema BD. Īn acest moment BD este vida deoarece nu are nici o data. Vom numi instantiere initiala a BD cānd datele sunt prima data īncarcate.

1.5. Interfete

SGBD-ul trebuie sa suporte interfete si limbaje apropiate pentru fiecare categorie de utilizatori. Īn acest paragraf se prezinta pe scurt diverse tipuri de interfete pentru un SGBD. Īn mod frecvent, exista interfete prietenoase cu utilizatorii pentru interactionare cu baza de date. Interfetele prietenoase cu utilizatorii pot fi īmpartite īn urmatoarele categorii;

1.5.1. Interfete meniu

Aceste interfete prezinta utilizatorului o lista de optiuni numita meniu, pe baza caruia utilizatorul īsi formuleaza cererea. Meniurile conduc pe de o parte la nevoia de a memora comenzile specifice si a sintaxei limbajului, pe de alta parte. Īntrebarea este compusa pas cu pas prin precizarea optiunilor din lista meniului care este afisata de sistem.

1.5.2. Interfete grafice

O interfata grafica va afisa o schema pentru utilizator sub forma unei diagrame. Utilizatorul poate specifica īntrebarea prin manipularea diagramei. Īn multe cazuri, interfata grafica poate fi combinata cu o interfata bazata pe meniu. Cele mai multe interfete grafice vor utiliza un dispozitiv de punctare cum ar fi mouse-ul sau stiloul luminos, pentru a puncta anumite parti ale afisarii diagramei schemelor.

1.5.3. Interfete bazate pe forme

O interfata bazata pe forme afiseaza o forma pentru utilizator. Utilizatorul poate sa obtina sub o anumita forma toate īnregistrarile sau noi date. Multe din SGBD-uri au limbaje speciale numite limbaje de specificare a formelor care ajuta programatorii sa-si specifice cererile.

1.5.4. Interfete īn limbaj natural

Aceste interfete accepta cererile scrise īn limba engleza sau īntr-un alt limbaj care este īnteles. Interfata īntr-un limbaj natural, īn mod obisnuit are o schema proprie care este ca o schema conceptuala a bazei de date. Interfata face referinta la cuvintele schemei care fac parte dintr-o multime de cuvinte standard ce compun īntrebarea. Daca interpretarea este realizata, interfata genereaza o īntrebare la nivel īnalt care corespunde cererii īn limbaj natural admisa de SGBD pentru prelucrare; īn caz contrar dialogul este īnceput cu utilizatorul pentru a clarifica īntrebarea.

1.5.5. Interfete pentru utilizatorii parametrici

Utilizatorii parametrici, ca de pilda functionarii de banca au la dispozitie o multime de aplicatii care sunt repetate de multe ori. Analistii de sistem si programatorii, īn mod frecvent, proiecteaza si implementeaza o interfata speciala pentru o clasa cunoscuta de utilizatori. Frecvent se utilizeaza o multime mica de abrevieri ale comenzilor cu scopul de a minimiza numarul de taste apasate la fiecare cerere. Astfel de interfete pot fi numite limbaje de comanda.

1.5.6. Interfete pentru administratorul BD

Cele mai multe SGBD-uri au posibilitatea de a crea comenzi privilegiate care vor fi utilizate numai de administratorul BD. Aceste interfete includ comenzi pentru creare, setarea parametrilor sistemului; de asemenea garanteaza autorizarea, schimba schema si organizeaza structura de memorare a fisierelor BD.


Document Info


Accesari: 14365
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )