Sunteți pe pagina 1din 10

Cap. 1 INTRODUCERE N GESTIUNEA BAZELOR DE DATE 1.

1 Introducere Sistemul de baze de date este, n esen, doar un sistem computerizat de pstrare a nregistrrilor. Baza de date nsi poate fi privit ca un fel de cutie de umplere electronic adic, un depozit sau un container pentru o colecie de fiiere de date digitale. Utilizatorii sistemului pot efectua o diversitate de operaii cu aceste fiiere; de exemplu: adugarea de noi fiiere n baza de date; adugarea de date n fiierele existente; consultarea datelor din fiierele existente; modificarea datelor din fiierele existente; tergerea fiierele existente din baza de date. n Figura 1.1 este prezentat o baz de date foarte mic, ce conine un singur fiier, numit VINOTECA; la rndul su, acesta cuprinde date despre coninutul unei anumite vinoteci. n Figura 1.2 este prezentat un exemplu de operaie de consultare din baza de date, mpreun cu datele returnate de aceast operaie. n Figura 1.3 sunt prezentate exemple de adugare, modificare i tergere din baza de date a vinotecii. Exemple de adugare i tergere a unor fiiere ntregi vor fi prezentate mai trziu, n capitolele ulterioare.
RAFT# 2 3 6 12 21 22 30 43 45 48 50 51 52 58 64 72 VIN Chardonnay Chardonnay Chardonnay Joh. Riesling Fum Blanc Fum Blanc Gewurztraminer Cab. Sauvignon Cab. Sauvignon Cab. Sauvignon Pinot Noir Pinot Noir Pinot Noir Merlot Zinfandel Zinfandel PRODUCTOR Buena Vista Geyser Peak Simi Jekel Ch. St. Jean Robt. Mondavi Ch. St. Jean Windsor Geyser Peak Robt. Mondavi Gary Farrell Fetzer Dehlinger Clos du Bois Cline Rafanelli AN 2001 2001 2000 2002 2001 2000 2001 1995 1998 1997 2000 1997 1999 1998 1998 1999 STICLE 1 5 4 1 4 2 3 12 12 12 3 3 2 9 9 2 LANSAT 2003 2003 2002 2003 2003 2002 2003 2004 2006 2008 2003 2004 2002 2004 2007 2007

Figura 1.1 Baza de date pentru vinotec (fiierul VINOTECA)

Consultare: SELECT VIN, RAFT#, PRODUCATOR FROM VINOTECA WHERE LANSAT = 2004;

Rezultat (aa cum apare, de exemplu, pe monitorul unui PC): VIN Cab. Sauvignon Pinot Noir Merlot RAFT# 43 51 58 PRODUCATOR Windsor Fetzer

Clos du Bois

Figura 1.2 Exemplu de consultare Adugare unor date noi: INSERT INTO VINOTECA ( RAFT#, VIN, PRODUCATOR, AN, STICLE, LANSAT ) VALUES ( 53, Pinot Noir, Saintsbury, 2001, 6, 2005) tergerea unor date existente: DELETE FROM VINOTECA WHERE RAFT# = 2; Modificarea datelor existente: UPDATE VINOTECA SET STICLE = 4 WHERE RAFT3 = 3; Figura 1.3 Exemple de operaii de adugare, tergere i modificare

Din figurile 1.1-1.3 rezult imediat o serie de aspecte: 1. Cererile SELECT, DELETE i UPDATE (numite i insrtuciuni, comenzi sau operatori) din figurile 1.2 i 1.3 sunt exprimate n limbajul SQL. Iniial un limbaj brevetat al companiei IBM, SQL este acum un standard internaional care este acceptat de aproape toate produsele de baze de date disponibile n comer. 2. n limbajul SQL se utilizeaz cuvntul cheie UPDATE cu semnificaia particular de modificare. Termenul de update (actualizare) este folosit pentru a desemna grupul celor trei operatori: INSERT, DELETE i UPDATE. 3. n limbajul SQL, fiierele digitale, cum este VINOTECA, sunt numite tabele; rbdurile unei stfel de tabele pot fi considerate ca nregistrri din fiier, iar coloanele pot fi considerate drept cmpuri. Vom utiliza termenii de fiiere, nregistrri i cmpuri atunci cnd vom vorbi despre sistemele de baze de date n general iar termenii de tabele, rnduri i coloane atunci cnd vom vorbi despre sistemele SQL n particular. 4. n ceea ce privete tabela VINOTECA, din motive de simplitate, am pornit de la ipoteza tacit c cele dou coloane VIN i PRODUCTOR conin date de tip ir de caractere iar celelalte coloane conin date sub forma unor numere ntregi. Dar, n general, coloanele pot conine date de o complexitate arbitrar. 5. Coloana RAFT# reprezint cheia primar a tabelei VINOTECA; aceasta nseamn, n esen, c niciodat nu se poate ntmpla ca dou rnduri din tabela VINOTECA s conin aceeai valoare RAFT#.

1.2 Sistem de baze de date

Sistemul de baze de date este, n esen, un sistem computerizat de pstrare a nregistrrilor; cu alte cuvinte, este un sistem computerizat, al crui scop general este s stocheze informaiile i s permit utilizatorilor s consulte i s actualizeze aceste informaii, la cerere. Informaiile respective pot fi de orice natur care prezint semnificaie pentru persoana sau organizaia respectiv. Un sistem de baze de date presupune patru componente principale: date, hardware, software i utilizatori. Datele Pentru a simplifica lucrurile, este convenabil s pornim de la ipoteza c totalitatea datelor din sistem sunt stocate ntr-o singur baz de date. Datele din baza de date vor fi att integrate ct i partajate. Prin noiunea de integrat ne referim la faptul c baza de date poate fi considerat ca o unificare a mai multor fiiere altfel diferite redundana acestor fiiere fiind parial sau total eliminat. De exemplu, o baz de date poate conine att un fiier ANGAJAT care s conin numele, adresele, departamentele, salariile angajailor etc. ct i un fiier INSCRIERE, care s reprezinte participarea angajailor la cursurile de pregtire (Figura 1.4). Acum s presupunem c, pentru a realiza procesul de administrare a cursurilor de pregtire, este necesar s cunoatem departamentul fiecrui participant nscris. Nu este necesar s includem aceste informaii redundante n fiierul INSCRIERE, deoarece ele pot fi gsite oricnd n fiierul ANGAJAT. Prin partajare nelegem c baza de date poate fi partajat ntre diveri utilizatori, n sensul c fiecare dintre acetia poate avea acces la aceleai date, posibil chiar n acelai moment (acces concurent).
ANGAJAT NUME INSCRIERE NUME CURS ADRESA DEPARTAMENT SALARIU

Figura 1.4 Fiierele ANGAJAT i INSCRIERE

Hardware Componentele hardware ale sistemului sunt formate din: Volumele de stocare secundare n principal, discuri magnetice care sunt utilizate pentru a pstra datele, mpreun cu dispozitivele de I/O asociate (unitile de disc, etc.), controlerele de dispozitive, canalele I/O etc. Procesorul hardware i memoria principal asociat, care sunt utilizate pentru a susine execuia software-ului sistemului de baze de date. Software ntre baza de date fizic, n sine adic datele care sunt stocate fizic i utilizatorii sistemului exist un strat de software, cunoscut sub diverse denumiri, printre care cea de manager al bazei de date, server al bazei de date sau, cea mai uzual, sistem de gestiune a bazelor de date (SGBD). Toate cererile de acces ale la baza de date sunt tratate de ctre SGBD; facilitile pentru adugarea i tergerea fiierelor (sau tabelelor), consultarea datelor i actualizarea acestora .a.m.d. sunt puse la dispoziie de

ctre SGBD. Astfel, o funcie general oferit de ctre SGBD const n ecranarea detaliilor la nivel de hardware fa de utilizatorii bazei de date. SGBD poate fi considerat cea mai important component software din sistemul general, dar nu este singura. Celelalte cuprind programele utilitare, instrumentele pentru dezvoltarea aplicaiilor, programele de asisten n design, editoarele de rapoarte i (cel mai important), managerul de tranzacii sau monitorul TP. Utilizatorii Exist trei clase mari i oarecum suprapuse de utilizatori: Programatorii de aplicaii, responsabili de scrierea programelor de aplicaii pentru bazele de date, ntr-un limbaj de programare oarecare (COBOL, C++, Java etc.). astfel de programe acceseaz baza de date prin lansarea unei cereri adecvate de obicei o instruciune SQL ctre SGBD. Programele n sine pot fi aplicaii convenionale sau pot fi aplicaii on-line, al cror scop este de a permite utilizatorului final s accese interactiv baza de date. Utilizatorii finali, care acceseaz interactiv baza de date. Un utilizator final final poate accesa baza de date prin intermediul unei dintre aplicaiile on-line sau poate utiliza o interfa furnizat ca parte component a sistemului. Astfel de interfee oferite de productori sunt accesate, desigur, i prin intermediul aplicaiilor on-line, dar aceste aplicaii sunt ncorporate, nu scrise de utilizator. Administratorul bazei de date (DBA) - Analiza atribuiilor administratorului bazei de date sunt amnate pentru paragraful 1.4. 1.3 Baz de date Baza de date este o colecie de date persistente, care sunt folosite de aplicaii ale unei anumite ntreprinderi. Spunem c datele din baza de date persist deoarece, dup ce au fost acceptate prima dat de ctre SGBD pentru introducerea n baza de date, ele pot fi terse din baza de date numai printr-o cerere explicit adresat sistemului SGBD, nu ca un simplu efect secundar de exemplu, terminarea execuiei unui program. Entiti i relaii Termenul de entitate este utilizat n mod curent n domeniul bazelor de date pentru a desemna orice obiect distinct care va fi reprezentat n baza de date. De exemplu, o ntreprindere va dori s nregistreze informaii despre proiectele curente, componentele utilizate n aceste proiecte, furnizorii care au contracte de livrare a acestor componente, depozitele n care sunt plasate aceste componente, angajaii care lucreaz la aceste proiecte .a.m.d. Proiectele, componentele, furnizorii, depozitele, angajaii etc. reprezint astfel entitile de baz despre care ntreprinderea respectiv trebuie s nregistreze informaii. n afar de entitile de baz, vor exista i relaii, care s coreleze aceste entiti de baz. De exemplu, exist o relaie (FC sau livrri) ntre furnizori i componente: fiecare furnizor ofer anumite componente i invers, fiecare component este oferit de anumii furnizori. Observm c aceast relaie este bidirecional, adic poate fi parcurs n ambele direcii. De exemplu, relaia FC dintre furnizori i componente poate fi utilizat pentru a rspunde la urmtoarele dou interogri: fiind dat un furnizor, aflai componentele furnizate de ctre acesta;

fiind dat o component, aflai furnizorii care o ofer. Relaiile fac parte din date n aceeai msur ca i entitile de baz. Prin urmare, trebuie reprezentate n baza de date, la fel ca i entitile de baz. Entitile de baz uneori i relaiile au proprieti (sau atribute), corespunztoare informaiilor pe care dorim s le nregistrm despre ele. De exemplu, furnizorii au nume, localizri etc., componentele au nume, culoare , mas etc. 1.4 Necesitatea bazelor de date Avantajele utilizrii unui sistem de date, fa de metodele tradiionale de inere a evidenei, bazate pe hrtii: Datele sunt compacte: nu sunt necesare fiiere de hrtie, posibil voluminoase. Viteza: calculatorul poate consulta i poate actualiza datele mult mai rapid dect un om. n particular, la interogrile ad-hoc, inspirate de moment, se poate primi un rspuns rapid, fr a consuma timp cu cutrile manuale sau vizuale. Mai puine corvezi: este eliminat o mare parte din munca plicticoas de ntreinere manual a fiierelor. Sarcinile mecanice sunt ntotdeauna ndeplinite mai bine de ctre calculatoare. Actualitatea: informaiile exacte, la zi, sunt disponibile, la cerere, n orice moment. Protecia: datele pot fi mai bine protejate fa de pierderea accidental sau accesul ilegal. Sistemul de baze de date ofer ntreprinderii un control centralizat asupra datelor sale. Administrarea datelor i administrarea bazelor de date Conceptul de control centralizat implic faptul c, n cadrul ntreprinderii, va exista o anumit persoan care deine aceast responsabilitate central n ceea ce privete datele; aceast persoan este administratorul de date (DA). Cum datele reprezint unul dintre bunurile cele mai de pre ale ntreprinderii, este absolut necesar s existe o persoan care nelege aceste date i necesitile ntreprinderii referitoare la ele, la un nivel superior din administraie. Administratorul de date este aceast persoan. Astfel, sarcina administratorului de date este de a decide mai nti ce date trebuie stocate n baza de date i de a stabili regulile de ntreinere i de tratare a acestor date, dup ce sunt stocate. Un exemplu de astfel de regul ar putea fi aceea prin care se stabilete cine i ce operaii poate efectua, asupra cror date i n ce condiii cu alte cuvinte, o politic de securitate a datelor. Administratorul de date este un manager, nu un tehnician. Persoana cu pregtire tehnic, responsabil de implementarea deciziilor administratorului de date este administratorul bazei de date (DBA). Spre deosebire de administratorul de date, administratorul bazei de date este un profesionist n domeniul IT. Sarcina DBA este de a crea baza de date real i de a implementa elementele tehnice de control necesare pentru a impune diversele decizii luate de DA. De asemenea DBA este responsabil de asigurarea funcionrii sistemului la performanele adecvate i cu furnizarea unei diversiti de alte servicii tehnice.

Avantajele ce decurg din noiunea de control centralizat: Datele pot fi partajate Partajarea nu nseamn doar c aplicaiile pot partaja datele din baza de date, ci i faptul c este posibil realizarea unor aplicaii noi care s opereze cu datele respective. Cu alte cuvinte, este posibil s fie satisfcute cerinele noilor aplicaii privind datele, fr a fi necesar adugarea unor date noi n baza de date. Redundana poate fi redus n sistemele care nu au baze de date, fiecare aplicaie are propriile sale fiiere particulare. Adeseori, acest fapt conduce la o redundan considerabil a datelor stocate, ceea ce duce la o risip a spaiului de stocare. De exemplu, o aplicaie pentru personal i una pentru nregistrrile din domeniul educaiei ar putea deine fiecare cte un fiier care s includ informaii departamentale despre angajai. Totui, aceste dou fiiere pot fi integrate iar redundana poate fi eliminat, cu condiia ca DA s cunoasc cerinele privind datele pentru ambele aplicaii, adic atta vreme ct ntreprinderea deine controlul general necesar. Inconsistenele pot fi evitate (ntr-o anumit msur) - De fapt, acesta este un corolar al punctului anterior. S presupunem c un anumit fapt despre lumea real sa zicem, faptul c angajatul A3 lucreaz n departamentul D8 este reprezentat prin dou intrri diferite n baza de date. De asemenea, s presupunem c sistemul SGBD nu cunoate existena acestui duplicat (adic redundana nu este controlat). Atunci, pot exista situaii n care cele dou intrri nu vor corespunde, i anume, cnd una dintre ele a fost actualizat iar cealalt nu. n astfel de situaii se spune c baza de date este inconsistent. Desigur c dac faptul dat este reprezentat printr-o singur intrare (adic dac este eliminat redundant) atunci o astfel de inconsisten nu poate aprea. Dac redundana nu este eliminat dar este controlat (prin semnalarea ei in sistemul SGBD), atunci SGBD-ul poate garanta c baza de date nu este niciodat inconsistent, asigurnd c orice modificare efectuat n una dintre cele dou intrri este aplicat automat i celeilalte. Acest proces este cunoscut sub denumirea de propagarea actualizrilor. Poate fi suport pentru tranzacii Tranzacia este o unitate de lucru logic (o unitate logic a funcionrii bazei de date) care, de regul presupune mai multe operaii n baza de date n particular o serie de operaii de actualizare. Un exemplu standard ar fi transferul unei sume de bani din contul A n contul B. Este limpede c aici sunt necesare dou actualizri, una pentru a retrage banii din contul A, iar cealalt pentru a-i depozita n contul B. Dac utilizatorul a stabilit c cele dou actualizri fac parte din aceeai tranzacie, atunci sistemul poate garanta efectiv fie c ambele sunt efectuate, fie c nu este efectuat nici una chiar dac, de exemplu sistemul cade (s zicem, din cauza unei pene de curent) la jumtatea procesului. Integritatea poate fi meninut Problema integritii const n a garanta (att ct este posibil) c datele din baza de date sunt corecte. De exemplu, se poate afia c un angajat a lucrat 400 de ore pe sptmn, n loc de 40 sau c aparine unui departament care nu exist. Controlul centralizat al bazei de date poate contribui la evitarea acestui tip de probleme n msura n care pot fi evitate prin faptul c permite administratorului de date s defineasc, iar administratorului DBA s implementeze constrngeri de integritate, care vor fi verificate ori de cte ori este efectuat o operaie de actualizare. Securitatea poate fi ntrit Administratorul DBA poate garanta c singura modalitate de a accesa baza de date

este prin intermediul canalelor adecvate; poate defini constrngeri de securitate, care sunt verificate ori de cte ori se ncearc accesarea datelor sensibile. Pot fi definite constrngeri diferite pentru fiecare tip de acces (consultare, adugare, tergere etc.) la fiecare informaie din baza de date. Observm totui c, n absena unor astfel de constrngeri, securitatea datelor poate fi expus, n realitate, unui risc mai mare dect n cazul unui sistem de fiiere tradiional, adic ntr-un sens natura centralizat a sistemului de baze de date necesit i existena unui sistem de securitate de calitate. Cerinele conflictuale pot fi echilibrate Cunoscnd cerinele generale ale ntreprinderii, administratorul DBA poate structura sistemul astfel nct s ofere serviciile generale care sunt cele mai bune pentru ntreprinderea respectiv. De exemplu, poate fi aleas o reprezentare fizic a datelor din memorie care s permit accesul rapid pentru aplicaiile cele mai importante (posibil, cu preul unui acces mai lent pentru celelalte). Standardele pot fi impuse Deinnd controlul centralizat al bazei de date, DBA poate garanta c, n reprezentarea datelor, sunt avute n vedere toate standardele aplicabile, printre care oricare sau toate standardele urmtoare: departamentale, de instalare, generale, industriale, naionale i internaionale. Majoritatea avantajelor enumerate mai sus sunt, probabil, destul de evidente. Totui, mai exist nc un aspect care s-ar putea s nu fie att de evident ce trebuie adugat n list: realizarea independenei de date. 1.5 Independena de date Exist dou tipuri de independen de date: fizic i logic; pentru moment, ns, ne vom ocupa doar de cea fizic. Independena de date poate fi neleas cel mai uor avnd n vedere mai nti opusul s. Aplicaiile implementate pe sistemele mai vechi tind s fie dependente de date. Aceasta nseamn c modul n care datele sunt reprezentate fizic n mediile de stocare i tehnicile de accesare a acestora sunt dictate de ctre cerinele aplicaiei avute n vedere; mai mult, nseamn c recunoatere acelei implementri fizice i acelei tehnici de acces sunt nglobate n codul aplicaiei. Este imposibil s se schimbe reprezentarea fizic (modul n care datele sunt reprezentate fizic n memorie) i tehnicile de acces (modul n care datele sunt accesate fizic), fr a afecta - probabil drastic aplicaia. Administratorul DBA sau, posibil, sistemul SGBD trebuie s beneficieze de libertatea de a schimba reprezentarea fizic i tehnica de acces, ca rspuns la modificarea cerinelor, fr a fi necesar s modifice aplicaiile existente. De exemplu, n baza de date ar putea fi adugate noi tipuri de date, ar putea fi adoptate standarde noi, s-ar putea schimba prioritile aplicaiilor, ar putea deveni disponibile noi dispozitive de stocare .a.m.d. Dac aplicaiile sunt dependente de date, atunci aceste modificri vor necesita, de regul, modificri corespunztoare n codurile programelor, prin aceasta oblignd programatorul la un efort care, altfel, ar fi consumat pentru crearea unor aplicaii noi. Realizarea independenei de date constituie un obiectiv major al sistemelor de baze de date. Independena de date poate fi definit ca imunitatea aplicaiilor fat de schimbarea reprezentrii fizice i tehnicii de acces ceea ce implic, desigur, c aplicaiile respective nu depind de vreo anumit reprezentare fizic sau tehnic de acces.

Vom analiza mai detaliat cteva exemple de tipuri de modificri pe care ar putea dori s le fac administratorul DBA i fa de care am dori ca aplicaiile s fie imune. Vom ncepe prin a defini trei termeni: cmp stocat, nregistrare stocat i fiier stocat.

Baza de date stocata

Alte fiiere stocate Fiierul stocat despre Componente nr. nume culoare masa comp. comp. comp. comp. C1piulirou12.0Dou apariii ale tipului de nregistrare Apariiile cmpului stocat
stocat component

C2bolverde17.0 nr. nume culoare masa comp. comp. comp. comp.

Figura 1.5 Cmpuri, nregistrri i fiiere stocate

ntr-un sens larg, cmpul stocat este cea mai mic unitate de date stocate. Baza de date conine multe apariii (sau instane) ale fiecruia dintre tipurile de cmpuri stocate. De exemplu, o baz de date care conine informaii despre diverse tipuri de componente ar putea cuprinde un cmp stocat numit numrul componentei i, astfel, va exista cte o apariie a acestui cmp stocat pentru fiecare fel de component (urub, balama etc.). O nregistrare stocat este o colecie de cmpuri stocate corelate. Din nou, putem face diferena ntre tip i apariie. Apariia (sau instana) unei nregistrri stocate este format dintr-un grup de apariii corelate ale cmpului stocat. Un fiier stocat reprezint colecia tuturor apariiilor unui tip de nregistrare stocat, existente n mod curent.

n sistemele fr baze de date, este normal situaia n care orice nregistrare logic, aa cum este vzut de o aplicaie oarecare, este identic cu o nregistrare stocat corespunztoare. Dar nu aceasta este neaprat situaia n cazul unui sistem de baze de date, deoarece s-ar putea s fie necesar ca DBA s poat efectua modificri n reprezentarea stocat a datelor adic n cmpurile, nregistrrile i fiierele stocate n timp ce datele, aa cum sunt vzute de aplicaie, nu se modific. De exemplu, cmpul SALARIUL din fiierul ANGAJAT poate fi stocat n reprezentare binar, pentru a economisi spaiul de stocare, n timp ce o aplicaie scris n limbajul COBOL ar putea sa-l vad ca un ir de caractere. Ulterior, dintr-un motiv oarecare, DBA ar putea decide s schimbe reprezentarea nregistrrilor din cmpul respectiv de exemplu, din binar n zecimal permind n continuare ca aplicaia n limbajul COBOL s o vad sub forma unor caractere. 1.6 Sistemele relaionale i alte tipuri de sisteme Pe scurt, un sistem relaional este acela n care: 1. Datele sunt percepute de ctre utilizator sub forma unor tabele (i nimic altceva dect tabele). 2. Operatorii pui la dispoziia utilizatorilor (de exemplu) pentru consultare sunt operatori care genereaz tabele noi din cele vechi. De exemplu, exist un operator, numit select (selecie), care extrage o submulime din rndurile unei tabele dat, iar altul, project (proiecie), care extrage o submulime a coloanelor i, desigur c o submulime a rndurilor i o submulime a coloanelor dintr-o tabel pot fi, la rndul lor, considerate ele nsele ca tabele. Aceste sisteme se numesc relaionale deoarece, n esena, relaia este doar un termen matematic pentru tabel. n figura 1.6 este prezentat o ilustrare. Datele sunt structurate ntr-o singur tabel, numit VINOTECA (caseta a). n caseta b din figur sunt prezentate dou exemple de consultare: unul care presupune o operaie de selecie sau crearea unei submulimi de rnduri, iar cellalt reprezint o operaie de proiecie sau crearea unei submulimi de coloane. Exemplele sunt exprimate n limbajul SQL.

a. Tabela dat:

VINOTECA

VIN Zinfandel Fum Blanc Pinot Noir Zinfandel

AN 1999 2000 1997 1998

STICLE 2 2 3 9

b. Operatori (exemple) :

1. Selecie:
SELECT VIN, AN, STICLE FROM VINOTECA

Rezultat:

VIN Zinfandel Fum Blanc

AN 1999 2000

STICLE 2 2

WHERE AN> 1998; 2. Proiecie: SELECT VIN, STICLE FROM VINOTECA; Rezultat: VIN Zinfandel Fum Blanc Pinot Noir Zinfandel STICLE 2 2 3 9

ntr-un sistem relaional, utilizatorul vede datele sub forma unor tabele, i nimic altceva dect tabele. Spre deosebire de acesta, ntr-un sistem nerelaional utilizatorul vede alte structuri de date. La rndul lor, aceste structuri necesit ali operatori care s le manipuleze. De exemplu, ntr-un sistem ierarhic, datele i sunt prezentate utilizatorului sub forma unor arbori iar operatorii pui la dispoziie pentru manipularea acestor arbori includ operatorii pentru pointerii de traversare (adic pointerii care implementeaz cile ierarhice n susul i n josul arborilor). Spre deosebire de acestea, o important caracteristic distinctiv a sistemelor relaionale este faptul c nu presupun nici un fel de pointeri. Sistemele de baze de date pot fi clasificate convenabil dup structurile de date i operatorii pe care i prezint utilizatorilor. Conform acestei scheme, sistemele cele mai vechi (pre - relaionale) pot fi clasificate n trei categorii mari, i anume: sisteme de liste inversate, ierarhice i de tip reea. Nu vom analiza detaliat aceste categorii deoarece cel puin d.p.d.v. tehnologic ele pot fi considerate nvechite. Primele produse relaionale au nceput s apar la sfritul anilor 1970 i nceputul anilor 1980. n prezent, marea majoritate a sistemelor de baze de date sunt relaionale i pot fi rulate pe aproape orice tip de platform hardware i software existent. n ordine alfabetic, exemplele cele mai importante sunt: DB2 (diverse versiuni) de la IBM Corp., Ingress II, de la Computer Associates International Inc., Informix Dynamic Server, realizat de Informix Software Inc., Microsoft SQL Server, de la Microsoft Corp., Oracle 9i realizat de Oracle Corp., i SybaseAdaptive Server, de la Sybase Inc. Mai recent au devenit disponibile anumite produse bazate pe obiecte sau obiect relaionale; sistemele bazate pe obiecte au aprut la sfritul anilor 1980 i nceputul anilor 1990, iar cele obiect relaionale la sfritul anilor 1990.