O baz de date (database) este o colecie de date corelate din punct de vedere logic, care reflect un anumit aspect al lumii reale i este destinat unui anumit grup de utilizatori. n acest sens, bazele de date pot fi create i meninute manual (un exemplu ar fi fiele de eviden a crilor dintr-o bibliotec, aa cum erau folosite cu ani n urm) sau computerizat aa cum sunt majoritatea bazelor de date n momentul de fa. O definiie ntr-un sens mai restrns a unei baze de date este aceea de colecie de date centralizate, creat i meninut computerizat, n scopul prelucrrii datelor n contextul unui set de aplicaii. Prelucrarea datelor se refer la operaiile de introducere, tergere, actualizare i interogare a datelor. 1
O baz de date conine toate informaiile necesare despre obiectele ce intervin ntr-o mulime de aplicaii, relaiile logice dintre aceste informaii i tehnicile de prelucrare corespunztoare. n bazele de date are loc o integrare a datelor, n sensul c mai multe fiiere sunt privite n ansamblu, eliminndu-se informaiile redundante. Este permis accesul simultan la aceleai date, situate n acelai loc sau distribuite spaial, a mai multor persoane prin mai multe tipuri de interogri. O baz de date poate fi: integrat sau partajat. Prin baz de date integrat se nelege c baza de date poate fi gndit ca o unire a mai multor fiiere de date, care sunt diferite i care nu sunt redundante, iar n cadrul unei baze de date partajate bucile individuale de date din baza de date pot fi partajate ntre mai muli utilizatori individuali, fiecare dintre acetia avnd posibilitatea de a accesa aceeai bucat de date simultan (sisteme multiutilizator). ns construirea bazelor de date fizice (datele), introducerea informaiilor n baza de date i dezvoltarea de aplicaii privind bazele de date de ctre utilizatori nu ar putea fi posibila fr existena unui software numit sistem de gestionare a bazelor de date (DBMS Data Base Management System). Acest sistem ofer posibilitatea utilizatorului de a avea acces la date prin folosirea unui limbaj de nivel nalt, apropiat de modul obinuit de exprimare, cu
1 Gh. Lazarovici, D. Micle, BIBLIOTHECA HISTORICA ET ARCHAEOLOGICA UNIVERSITATIS TIMISIENSIS, 2001 (http://arheologie.ulbsibiu.ro/publicatii/carti/ai/1d.htm )
Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
4
scopul de a obine informaii, utilizatorul fcnd abstracie de algoritmii aplicai pentru selectarea datelor implicate si a modului de memorare a lor. Aadar, DBMS reprezint o interfa ntre utilizator i sistemul de operare. Revenind la bazele de date, acestea trebuie sa ndeplineasc variate funcii, adica s asigure abstractizarea, integrarea, integritatea, securitatea, partajarea i independena datelor. Bazele de date s-au impus rapid ca soluie eficace i eficient de gestiune a coleciilor de date structurate i voluminoase din cadrul firmelor. Extinderea utilizrii tehnologiilor informaionale i de decizie a dus la tipizarea bazelor de date n funcie de rolul lor. Astfel, din perspectiva utilizatorului, bazele de date pot fi: baze de date operaionale, care au drept scop stocarea datelor cu privire la sistemele operaionale din ntreprinderi; acestea mai poart i denumirea de baze de date de domeniu ntruct stocheaz date privind tranzaciile care se realizeaz ntr-un anumit domeniu de activitate, un exemplu n acest sens fiind constituit de bazele de date de gestiune a resurselor umane; baze de date de informare a executivului, care realizeaz stocarea rezultatelor din urma prelucrrii datelor din bazele de date operaionale i/sau din bazele de date externe; acest tip de baze de date constituie suportul sistemelor informatice ale executivului; baze de date multidimensionale fiind baze de date integrate, nevolatile i istorizate, organizate pentru a ajuta n procesul de management; baze de date externe care pot conine date comerciale sau date statistice i pot fi accesate on-line liber sau printr-un anumit tarif. Dup modul de accesare, bazele de date pot fi: baze de date colective, accesate de ctre cei mai muli utilizatori (eventual i simultan) Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
5
Majoritatea bazelor de date sunt colective, fiind organizate de regul, pe funcii ale ntreprinderii i utilizate de ctre cei care i desfoar n compartimentele corespunztoare. baze de date individuale, accesate exclusiv de ctre cel care le gestioneaz. Aceste baze de date se ntlnesc mai rar n unitile economice i in mai mult de practica unor cadre de conducere pentru informaii personale. Dup modul de localizare (stocare) al datelor, bazele de date pot fi: baze de date locale, stocate de regul pe server-ul unei reele locale de calculatoare i utilizate de pe mai multe calculatoare Client (posturi de lucru n reeaua local) baze de date distribuite, stocate parial sau total n diferite puncte ale unei reele distribuite de calculatoare (recomandate ndeosebi pentru domeniul instituiilor bancare). Gestiunea bazelor de date distribuite ridic probleme specifice referitoare ndeosebi la soluia de stocare a datelor (prin replicare sau prin fragmentare) i la interogare a acestora (fcnd abstracie sau innd cont de localizare). Dup tipul datelor gestionate i specificitatea lor, bazele de date pot fi: baze de date convenionale, ce conin date alfanumerice clasice; baze de date multimedia, ce conin date multimedia (imagini, sunete etc.); baze de date textuale, ce conin documente. Dup numrul de utilizatori, acestea se mpart n: baze de date multiutilizator (sau informaionale) presupun utilizatori multipli baze de date monoutilizator (sau personale) presupun un singur utilizator Clasificare dup modelul de date: Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
6
modelul de date relaional (relational model) Acest model se bazeaz pe noiunea de relaie, care corespunde unei entiti de acelai tip i are o reprezentare ce const dintr-un tabel bidimensional, compus din linii i coloane. Fiecare linie din tabel reprezint o entitate i este compus din mulimea valorilor atributelor entitii respective, iar fiecare atribut corespunznd unei coloane a tabelului; modelul de date orientat obiect (object model). Caracteristicile modelului sunt: abstractizarea, motenirea, ncapsularea, modularizarea; modelul de date obiect-relaional (object-relational model). Acest tip reprezint extinderea modelului relaional cu caracteristici ale modelului obiect, extindere necesar pentru realizarea bazelor de date care definesc i prelucreaz tipuri de date complexe; modelul de date ierarhic (hierarchical model). Modelul ierarhic a fost folosit pentru primele tipuri de baze de date, aparute la inceputul anilor 60. Datele sunt organizate sub form de structur arborescent. Dezavantajele acestui model sunt reprezentate de dificultatea n formularea interogrilor ce manipuleaz simultan mai multe ramuri i de redundana informaiei ce antreneaz incoerent; modelul de date reea (network model) Acest tip a aprut la nceputul anilor 70, datele sunt organizate sub form de reea. Modelul reea completeaza modelul ierarhic. Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
7
Dup tipul datelor coninute: baze de date care conin date de tipul numere, caractere, simboluri; baze de date audio; baze de date video; baze de date multimedia; baze de date specifice sistemelor informatice geografice (spaiale); baze de date faptice - conin informaii referitoare la un produs, tehnologie de fabricaie, etc.; baze de date statistice conin date cu caracter statistic; baze de date de referin conin informaii de tip catalog. Dup domeniul acoperit de datele coninute n baza de date: baze de date tehnico-tiinifice; baze de date economice; baze de date geografice; baze de date culturale; baze de date de literatur gri; baze de date pentru afaceri; baze de date administrative. Dup modul de exploatare a bazei de date: baze de date on-line - acces prin intermediul reelelor de calculatoare; baze de date off-line. Dup accesibilitate: baze de date cu acces liber; baze de date comerciale. Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
8
Aadar, se cunosc mai multe tipuri de baze de date dup modul de organizare, modul de dispunere pe suport magnetic a informaiei i a elementelor componente:
modele primitive datele sunt organizate la nivel logic n fiiere, structura de baz este nregistrarea, mai multe nregistrri fiind grupate n structuri de tip fiier;
baze de date ierarhice legturile dintre date sunt ordonate unic, accesul se face numai prin vrful ierarhiei, un subordonat nu poate avea dect un singur superior direct i nu se poate ajunge la el dect pe o singur cale;
baze de date n reea datele sunt reprezentate ca ntr-o mulime de ierarhii, n care un membru al ei poate avea orici superiori, iar la un subordonat se poate ajunge pe mai multe ci; baze de date relaionale structura de baz a datelor este aceea de relaie- tabel, limbajul SQL (Structured Query Language) este specializat n comenzi de manipulare la nivel de tabel. Termenul relaional a fost introdus de un cercettor al firmei IBM, dr. E. F. Codd n 1969, fiind cel care a enunat cele 13 reguli de baz necesare pentru definirea unei baze de date relaionale. Baza de date relaional reprezint o mulime structurat de date, accesibile prin calculator, care pot satisface n timp minim i ntr-o manier selectiv mai muli utilizatori. Aceast mulime de date modeleaz un sistem sau un proces din lumea real i servete ca suport unei aplicaii informatice;
baze de date distribuite sunt rezultatul integrrii tehnologiei bazelor de date cu cea a reelelor de calculatoare. Sunt baze de date logic integrate, dar fizic distribuite pe mai multe sisteme de calcul. Integrarea bazei de date distribuite se face cu ajutorul celor trei tipuri de scheme care sunt implementate: Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
9
1. schema global definete i descrie toate informaiile din baza de date distribuit n reea; 2. schema de fragmentare descrie legturile dintre o colecie global i fragmentele sale. Ea este de tipul unu la mai muli i are forma unei ierarhii; 3. schema de alocare descrie modul de distribuire a segmentelor pe calculatoarele (nodurile) din reea. Fiecare segment va avea o alocare fizic pe unul sau mai multe calculatoare. Schema de alocare introduce o redundan minim i controlat: un anumit segment se poate regsi fizic pe mai multe calculatoare.
Utilizatorul unei asemenea baze de date o vede ca pe o baz de date unic, compact (nivel logic), cu toate c n realitate ea este distribuit pe mai multe calculatoare legate n reea (nivel fizic). Aceast organizare a dus la o cretere substanial a vitezei de acces la o baz de date ntr-o reea de calculatoare. Anumite date stocate pe un server local sunt mult mai rapid accesate dect dac ele s-ar afla pe un server la distan, unde baza de date ar fi fost stocat n ntregime (nedistribuit);
Datele dintr-o baz de date pot fi structurate pe 3 niveluri, n funcie de categoria de personal implicat astfel:
Nivelul conceptual (global) exprim viziunea administratorului bazei de date asupra datelor.
Acestui nivel i corespunde structura conceptual (schema) a bazei de date, prin care se realizeaz descrierea tuturor datelor, ntr-un mod independent de aplicaii, care face posibil administrarea datelor.
Nivelul logic exprim viziunea programatorului de aplicaie asupra datelor. Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
10
La acest nivel se realizeaz o descriere a datelor corespunztoare unui anumit program de aplicaie. Nivelul fizic exprim viziunea inginerului de sistem asupra datelor. Acest nivel corespunde schemei interne a bazei de date prin care se realizeaz o descriere a datelor pe suport fizic de memorie. Crearea unei baze de date. Datele dintr-o colecie de entiti pot fi unite i rezumate n moduri diferite pentru a produce informaie. Informaia este o colecie de date plasat n context, care poate fi furnizat de ctre o situaie sau de alte date. Pentru a crete (mrii) bazele umane de cunotine mentale memorate, omul colecteaz i memoreaz date n form automat. O astfel de colecie se numete baz de date. Ea reprezint nu numai date despre entiti, dar i date despre relaiile dintre entiti. Pe baza aceleiai structuri funcioneaz o baz de date i ntr-un calculator. Exist dou forme de baze de date: a. baze de date fizice, care sunt reprezentri pe medii de memorare a entitilor, atributelor i a relaiilor dintre ele; b. baze de date logice, care reprezint entiti, atribute i relaiile independente de modul n care datele i relaiile sunt reprezentate i memorate ntr-o baz de date fizic.
Bazele de date mbrac diferite forme i structuri n funcie de modelul folosit. Sunt cunoscute trei tipuri de modele:
1. Modelul relaional Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
11
Cea mai uzual structur este cea relaional. Pentru a crea o astfel de baz de date, este necesar s fie identificat structura bazei de date: nume, tipul i lungimea cmpurilor din tabelul bazei de date relaionale. Elementele de baz folosite n cadrul acestui model sunt conceptele de entitate i cel de relaie. O entitate reprezint un obiect al lumii reale, cu o existen independent i poate reprezenta un obiect fizic, o activitate, un concept. Orice entitate are o serie de proprieti numite atribute, ce descriu entitatea respectiv. Cu toate c nu reprezint acelai lucru, pentru denumirea de entitate se mai folosete i denumirea de tabel al bazei de date, iar pentru atribute, cmpurile tabelului. Modelul relaional se bazeaz pe noiunea matematic de relaie (din teoria mulimilor) definit ca o submulime a produsului cartezian a unei liste finite de mulimi numite domenii. Elementele unei relaii se numesc tupluri (sau n-cupluri), iar numrul de domenii din produsul cartezian se numete arietatea relaiei (FOTACHE 1997, 102). De obicei relaiile sunt reprezentate sub forma unor tabele n care fiecare rnd reprezint un tuplu i fiecare coloan reprezint valorile tuplurilor dintr-un domeniu dat al produsului cartezian. n reprezentarea sub form de tabel a unei relaii, coloanelor i domeniilor corespunztoare lor, li se asociaz nume intitulate atribute. Mulimea numelor atributelor unei relaii se numete schem relaional. Deci prin relaie se nelege o mulime de funcii definite pe o mulime de atribute cu valori n reuniunea unor domenii, cu restricia ca valoarea corespunztoare fiecrui atribut s se afle n domeniul asociat acelui atribut. Se numete cheie candidat al unei relaii R coloana sau mulimea de coloane din R pentru care valorile corespunztoare din oricare dou tupluri nu coincid, deci identific tuplurile prin relaia respectiv i nu conin strict o submulime de coloane cu aceast proprietate. Pentru fiecare relaie se alege un candidat de cheie care se numete cheie primar a relaiei. Tuplurile unei relaii nu pot s conin valoarea nul Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
12
n coloane ce aparin cheii primare. Eventualii candidai de chei diferii de cheia primar se numesc chei alternante. Se numete cheie strin o coloan sau o mulime de coloane a unei relaii R 1 ale crei valori, dac nu sunt nule, coincid cu valori ale unei chei primare dintr-o relaie R, nu neaprat distinct de R 1 . Mulimea tuturor schemelor relaionale corespunztoare unei aplicaii se numete schema bazei de date relaionale, iar coninutul curent al relaiilor, la un moment dat, se numete baz de date relaional. n modelul relaional, entitile sunt reprezentate sub form de relaii n care schema relaional conine toate atributele entitii i fiecare tuplu al relaiei corespunde unui element al entitii. Cele mai multe cereri ale unui utilizator privesc determinarea unor informaii cu anumite proprieti, iar rspunsul posibil este o relaie care descrie toate elementele cu aceste proprieti. Modul de prezentare al rspunsului depinde de interfaa dintre DBMS i utilizator. 2. Modelul reea
Modelul reea este cel mai apropiat de forma de reprezentare a bazelor de date sub forma diagramelor entitate-relaie. Deosebirea const n faptul c toate relaiile ce apar pot fi numai binare i de tipul 1:1 sau 1:N. Aceast restricie permite reprezentarea grafic a unei baze de date de tip reea sub forma unui graf direcionat numit reea. ntr-o reea, nodurile corespund entitilor i relaiile sunt reprezentate prin sgei ntre noduri (de la tat la fiu) i anume sgei simple dac relaia este de tipul 1:1 i sgei duble dac relaia este de tipul 1:N. n modelul reea, entitilor le corespund fiiere logice care au drept cmpuri atributele entitii i eventuale cmpuri de legtur pentru relaii. Fiecrui element al entitii i corespunde o nregistrare logic. Dac nregistrrile sunt identificate numai prin relaia cu alte entiti, atunci se mai adaug la nregistrarea logic nc un cmp ce cuprinde un numr de ordine care permite identificarea acestor nregistrri. Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
13
Operaiile cele mai frecvente pentru modelul reea se mpart n dou categorii: cutarea unor elemente ale unor entiti cu anumite proprieti sau cutarea unor informaii prin utilizarea legturilor ntre entiti; navigarea n reeaua de date.
3. Modelul ierarhic
Modelul ierarhic (arborescent) este considerat un caz particular al modelului reea, n care diagrama asociat este o pdure (mulime de arbori) i n care toate legturile sunt pe direcia drumului, de la rdcin la nodul fiu din relaie, toate relaiile fiind de tipul 1:N. La fel ca n cazul celorlalte dou modele, exist posibilitatea interpretrii diagramelor entitate-relaie sub forma modelului ierarhic. Pentru evitarea redundanelor n modelul ierarhic, se folosete noiunea de element virtual, care nlocuiete dublura unui element prin adresa elementului respectiv, fiecare element aprnd n baza de date real o singur dat. Operaiile din bazele de date de tip ierarhic se traduc n procese de parcurgere a arborilor. Elementele virtuale permit legarea informaiilor din aceeai entitate sau din entiti diferite. Implementarea la nivel logic pentru modelul ierarhic poate fi cea utilizat pentru modelul reea sau prin nregistrri de lungime variabil. Datele sunt stocate pe mediul extern n ordinea dat de parcurgerea n preordine a arborilor, ceea ce uureaz determinarea informaiilor pentru cererile care se refer la descendenii unor noduri printr-un numr mic de accese la mediul extern. Indiferent de modelul folosit pentru crearea bazei de date, principalele operaiuni care se realizeaz n cadrul acesteia sunt: deschidere/nchidere baza de date; Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
14
deschiderea unei baze de date ntr-o anumit zon de lucru; vizualizarea structurii unei baze de date; copierea structurii unei baze de date; modificarea unei baze de date; adugarea de nregistrri; tergerea parial sau total a nregistrrilor.
Sisteme de gestionare a unei bazei de date Un sistem de gestionare a bazei de date (DBMS - database management system) este un produs software furnizat de productorul bazei de date. Produse software precum Microsoft Access, Microsoft SQL Server, Oracle Database, Sybase, DB2, INGRES, MySQL i Postgre SQL fac parte din categoria DBMS sau, mai corect, DBMS relaionale (RDBMS). RDBMS-urile sunt cunoscute i sub numele de SGBD-uri. Sistemul DBMS pune la dispoziie toate serviciile de baz necesare pentru organizarea i ntreinerea bazei de date, inclusiv urmtoarele: Transferarea datelor n i din fiierele fizice de date, n funcie de cerine; Gestionarea accesului concurenial la date al mai multor utilizatori, inclusiv prevenirea conflictelor care ar putea fi cauzate de actualizri simultane; Gestionarea tranzaciilor, astfel nct toate modificrile facute asupra bazei de date printr-o tranzacie s fie executate ca o singur unitate, cu alte cuvinte, dac tranzacia reuete, toate modificrile efectuate de tranzacie sunt nregistrate n baza de date; dac tranzacia eueaz, niciuna dintre modificri nu este nregistrat n baza de date (totui unele sisteme RDBMS nu asigur suportul pentru tranzacii); Accept un limbaj de interogare, care reprezint sistemul de comenzi folosit de utilizator pentru a obine date din baza de date. SQL este principalul limbaj folosit pentru sistemele DBMS relaionale; Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
15
Funcii pentru salvarea bazei de date i pentru refacerea bazei de date n urma erorilor; Mecanisme de securitate pentru mpiedicarea accesului neautorizat la date i modificarea acestora.
Aportul bazelor de date n gestionarea documentelor electronice
Gestionarea documentelor electronice presupune un ansamblu de proceduri, operaii i tehnici care au n vedere controlul, pe toat durata de existen a documentelor electronice ntr-o organizaie, a crerii, achiziionrii, utlizrii, accesului, arhivrii i pstrrii acestora, precum i asigurarea autenticitii i integritii. Prin natura lor, sistemele de management a documentelor utilizeaz capaciti de stocare mari i foarte mari prin utilizarea unor sisteme de baze de date capabile s gestioneze un volum mare de date. Stocarea centralizat a documentelor asigur i un back-up unitar al tuturor documentelor gestionate de sistem. Sistemele stocheaz documentele in dou moduri: BLOB file - stocarea documentelor in baza de date; File Server - stocarea documentelor pe un server de fiiere i stocarea pointerilor catre fiiere in baza de date. Bazele de date, fie c sunt personale, informaionale sau pentru gestiunea economic, simplific ntr-un mod semnificativ activitatea unei persoane sau a unei societi printr-o gestionare mult mai eficient a documentelor electronice, astfel c n activitatea unei firme mari, fr existena bazelor de date si organizarea lor printr- un sistem eficient de gestiune a acestor baze, ritmul de dezvoltare al firmei ar fi extrem de lent. Aadar, bazele de date joac un rol esenial n gestionarea documentelor electronice, simplificnd diverse operaiuni precum introducerea de noi date, Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat
16
cutarea unor diverse informaii (n mod special atunci cnd volumul de informaii este unul foarte mare), reducerea redundanei datelor, evitarea inconsistenei datelor. De asemenea, o baz de date ofer i posibilitatea de a partaja i totodat de a proteja datele existente. Unul din cele mai mari avantaje oferite este acela de meninere a integritii i independenei datelor, ns toate aceste avantaje nu pot fi atinse fr existena unei persoane specializate care s fie capabil s realizeze i s foloseasc ntr-un mod corect i eficient o baz de date.
Universitatea Bucureti, Facultatea de Litere, Specializarea Asisten Managerial i Secretariat