Baze de date
Sisteme de gestiune a bazelor de dateSisteme de gestiune a bazelor de dateIn cadrul oricarei organizatii este necesar ca resursa de date sa fie bine definita si documentata, bine organizata si controlata, partajabila si relevanta pentru deciziile luate in cadrul organizatiei. Sistemul de Gestiune al Bazei de Date (SGBD) reprezinta un pachet de programe specializat pentru definirea, crearea, intretinerea si accesul controlat la baza de date. Obiectivul principal al unui SGBD este de a separa datele de programele de aplicatie. SGBD constituie o interfata intre utilizatori si baza de date si consta din programe care interactioneaza cu programele de aplicatie ale utilizatorului si cu baza de date. Un SGBD are o structura complexa si include module program specializate pentru a indeplini anumite functiuni: - gestionarea bazei de date; - definirea datelor (descrierea datelor); - manipularea datelor (actualizare si interogarea bazei de date); - controlul si securitatea datelor (controlul integritatii, accesul concurential si securitatea datelor); - utilitare. SGBD trebuie sa asigure trecerea de la un nivel de abstractizare la altul, adica sa poata interpreta „comenzile” exprimate in termen de schema externa, pentru a le transpune prin intermediul schemei conceptuale in operatii de intrare-iesire la nivel fizic. SGBD gestioneaza la nivel conceptual un dictionar de date. Modulele program de gestiune a bazei de date realizeaza accesul fizic la date in conformitate cu cerintele exprimate printr-o „comanda”. Modulele program de definirea datelor permit traducerea unui limbaj specializat care realizeaza descrierea naturii datelor si a legaturii logice dintre date la nivel global conform schemei conceptuale, precum si schemelor externe specifice fiecarei aplicatii program externe. Modulele program de manipulare a datelor permit utilizatorilor prin intermediul unui limbaj specializat sa gaseasca, sa insereze, sa modifice, respectiv sa elimine datele din baza de date. Modulele program pentru controlul si securitate datelor au rolul de a asigura confidentialitate a si integritatea datelor, precum si rezolvarea problemelor de concurenta. Modulele program utilitare permit intretinerea, manipularea exploatarea corecta si facila a bazei de date. Sistemele SGBD evolueaza continuu si trebuie sa se extinda pentru a rezolva eficient noile cerinte ale utilizatorilor. Istoria sistemelor de gestiune a bazelor de date delimiteaza trei generatii care sunt caracterizate de modelele logice folosite: - sisteme de tip ierarhic si de tip retea, - sisteme relationale; - sisteme avansate, care se repera la sistemele orientate obiect, la cele deductive, multimedia, active, etc. SGBD de tip ierarhic (hierarchical database) si retea (network database) reprezinta din punct de vedere istoric primele generatii de SGBD. In modelele ierarhice si retea datele sunt reprezentate la nivel de articol prin legaturi ierarhice de tip arbore, respectiv de tip graf. Structurile de date corespunzatoare acestor modele pot fi descrise la nivel logic cu ajutorul unei structura de date abstract numit diagrama. Diagrama este in acest caz un graf orientat prin care se reprezinta tipuri de entitati si legaturile functionale dintre acestea. Sistemele de gestiune a bazelor de date bazate pe modelul de date retea, respectiv cel ierarhic, poarta numele de sisteme navigationale si au fost dezvoltate in perioada 1960-1970. A doua generatie de SGBD o reprezinta modelul relational care trateaza entitatile ca relatii. Sistemele de Gestiunea Bazelor de Date Relationale sunt caracterizate de structuri de date simple si intuitive, de operatori care se aplica relatiilor pentru a defini, cauta, si reactualiza datele. Bazele de date relationale asigura independenta completa a descrierii logice a datelor in termeni de relatii si in descrierea fizica a datelor in termen de fisiere. In prezent exista cateva sute de sisteme SGBD relationale pentru toate tipurile de calculatoare. Modelul relational asigura o independenta completa in ceea ce priveste descrierea logica si fizica a datelor. In plus SGBD relationale pun includ limbaje specializate pentru descrierea si manipularea datelor. Modelul relational are capacitati limitate de modelarea datelor. SGBD relationale nu folosesc obiecte complexe si dinamice, nu realizeaza gestiunea distribuita a datelor si nici gestiunea de cunostinte.
Conceptul de programare orientata obiect sau programarea calculatoarelor cu ajutorul obiectelor utilizeaza conceptele de obiect si clasa de obiecte. Obiectul este definit de o multime de proprietati numite atribute si are un anumit comportament care in cazul obiectelor folosite in programare se concretizeaza prin metode, care sunt programe care se executa in mod automat atunci cand in mediul extern sau cel extern al obiectului apare un anumit eveniment. Numim obiect o entitate unic identificabila, care contine atat atributele care definesc starea unui obiect din lumea reala, cat si actiunile asociate acestuia. Obiectele de acelasi tip formeaza o clasa de obiecte care reprezinta o generalizare a notiunii de tip de data. Clasa include definitia datelor si a metodelor. Conform principiului incapsularii datelor, datele clasei sunt vizibile doar metodelor clasei, iar conform principiului mostenirii sau al derivarii o clasa poate fi definita folosind o clasa existenta. Conceptul de incapsulare presupune ca un obiect contine atat structura de date, cat si multimea de operatii care pot fi utilizate pentru al manipula. Ascunderea informatiilor semnifica separarea aspectelor externe ale unui obiect de detaliile sale interne, care sunt ascunse de lumea exterioara. In acest mod, detaliile interne ale unui obiect pot fi modificate fara a afecta aplicatiile care il utilizeaza cu conditia ca detaliile externe sa ramana neschimbate. Includerea tehnicilor de programare orientata obiect in domeniul bazelor da date a condus la aparitia Sistemelor de Gestiune a Bazelor de Date Orientate Obiect, care realizeaza o modelare superioara a informatiei luand in considerare aspectele dinamice si integrarea descrierii structurale si comportamentale. Prin utilizarea principiului programarii orientate obiect in domeniul bazelor de date relationale a aparut Sistemele de Gestiune a Bazelor de Date Relationale Orientate Obiect. O relatia este o multime de inregistrari ce reprezinta fapte. Cunostintele sunt asertiuni generale si abstracte asupra faptelor. Pe baza cunostintelor se deduc fapte noi prin deductie plecand de la fapte cunoscute. Pentru a rezolva problema gestiunii de cunostinte au aparut bazele de date deductive, care utilizand programarea logica gestioneaza cunostinte relativ la baze de date. Un Sistem de Baze de Date Deductiv poseda un limbaj de definire a datelor care permite definirea structuri predicatelor sub forma de relatii si constrangeri de integritate asociate, un limbaj de manipulare a datelor care permite pe langa actualizarea datelor si formularea de cereri, un limbaj de reguli de deductie care sa permita construirea predicatelor derivate. Sistemele distribuite reprezinta calculatoare interconectate printr-o retea de comunicatie utilizate pentru un scop global. Gestionarea datelor aflate pe calculatoare diferite, eterogene din punctul de vedere al sistemului de operare folosit se realizeaza cu ajutorul unei baze de date distribuite. Bazele de date distribuite sunt sisteme de baze de date cooperante care sunt rezidente pe calculatoare diferite si situate in locuri in locatii diferite. Sistemul de gestiune al unei baze de date distribuite face posibil accesul programelor de aplicatie la date rezidente pe mai multe calculatoare fara ca localizarea datelor sa fie cunoscuta. Bazele de date distribuite folosesc ca instrument principal pentru prelucrarea datelor distribuite modelul relational. Integrarea mai multor baze de date autonome si eterogene conform unei scheme globale cu scopul de a realiza accesul uniform si integrat la fiecare din bazele de date componente a condus al conceptul de sistem multibaza de date. Avantajul major al acestui model consta in faptul ca printr-o singura interogare pot fi accesate date din mai multe baze de date fara a afecta aplicatiile care manipuleaza datele din fiecare baza de date componenta a sistemului integrat. Fiecare baza de date din sistemul integrat poate folosi propriile limbaje de interogare. Bazele de date permit stocarea unei cantitati foarte mari de informatie, care poate fi folosita in mod pentru elaborarea deciziilor operative, dar si a celor strategice. Pentru elaborarea deciziilor operative se folosesc date aferente activitatii curente, date aferente unei perioade scurte de timp. Acestea sunt generate si preluate in sistem in mod dinamic pentru optimizarea procesului de decizie. Prelucrarea acestor date se realizeaza in pe baza unor scenarii de tip procesarea de tranzactii in timp real (OLTP – On Line Transaction Processing). Necesitatea analizarii unor cantitati foarte mari de date a condus la conceptul de magazie de date (Data Warehouse), care utilizeaza pentru atingerea acestui scop scenarii de tip procesare analitica in timp real (OLAP – On Line Analytical Processing). Baza de date analitica permite realizarea de interogari multidimensionale instantanee, fara a fi necesar ca acestea sa fie definite anterior. Magazia de date este proiectata pentru a facilita analiza multidimensionala a datelor si reprezinta un sistem care include informatii despre o organizatie structurate in mai multe baze de date, numite in acest caz rafturi de date (Data Marts). Data Warehouse reprezinta o baza de date proiectata pentru a facilita analiza datelor fiind orientata spre dimensiuni. Structurile de date multidimensionale sunt vizualizate cel mai bine sub forma unor cuburi de date si a unor cuburi in cadrul cuburilor. Fiecare fata a unui cub reprezinta o dimensiune. Bazele de date multidimensionale reprezinta o modalitate compacta pentru vizualizarea si manipularea elementelor de date care pot avea multe inter-relatii.
|