Sunteți pe pagina 1din 6

CURSUL 6 SISTEME INFORMATICE CU BAZE DE DATE /BAZE DE TABELE DE CALCUL

Datele sunt stocate i structurate n cadrul sistemelor de calcul, att n memoria intern ct i n memoria extern. Prin caracteristicile de natur, volum, dinamic i complexitate, datele prezint aspecte specifice de organizare n memoria extern. Prin organizarea datelor se nelege procesul de definire i structurare a datelor n colecii; precum i stabilirea legturilor ntre elementele unei colecii i ntre colecii. n esen, conceptul de baz de date (BD) poate fi definit ca fiind una sau mai multe colecii de date aflate n interdependen, mpreun cu descrierea datelor i a relaiilor dintre ele. Dac baza de date este organizat sub form tabelar bidimensional n care liniile reprezint nregistrrile iar coloanele domeniile (cmpurile) vorbim de baze de tabele (BT). Organizarea datelor presupune: definirea, structurarea, ordonarea i gruparea datelor n colecii de date omogene;

stabilirea legturilor (relaiilor) ntre date, ntre elementele unei colecii, ntre coleciile de date; modulele fizice de reprezentare (stocare) pe suport informaional a datelor, prelucrabil ntr-un sistem de calcul. Scopul organizrii datelor l constituie regsirea automat a datelor dup diverse criterii i forme. Obiectivele urmrite n organizarea datelor sunt: timpul de acces la datele organizate pe diferite suporturi de date s fie minim (acces rapid la date); spaiul de memorie intern i extern ocupat de date s fie mai redus. Se urmrete ca pe un spaiu de memorie ct mai mic s se introduc un volum ct mai mare de date; datele s apar o singur dat n sistem (unicitatea datelor). Totui uneori, pentru realizarea unui acces rapid la date, se impune acceptarea unei redundane minime a datelor; s se reflecte, pe ct posibil, toate legturile dintre obiectele, fenomenele i procesele economice pe care aceste date le reprezint; s prezinte schimbarea structurii datelor i a relaiilor dintre acestea fr a modifica programele ce le gestioneaz (interdependena datelor de programele de aplicaii). Structura de date constituie o colecie de date ntre care s-a stabilit o serie de legturi, care conduc la un anumit mod de identificare i de selectare a componentelor. Operaiile asupra unui structuri de date sunt: crearea, consultarea, actualizarea, ordonarea (sortarea, indexarea), selecia, interclasarea, fuzionarea, ventilarea, copierea i sintetizarea etc. Tipurile de structuri logice de date sunt: punctual, liniar, arborescent, reea, relaional, pe obiecte. Un sistem BD (cunoscut i sub numele de banc de date) reprezint un ansamblu de elemente hardware, software i alte resurse, inclusiv date, prin care este creat, utilizat i ntreinut una sau mai multe BD.

Arhitectura bazelor de date evideniaz componentele acestora i este standardizat. O astfel de arhitectur general cuprinde urmtoarele componente:

baz de date propriu-zis n care se memoreaz colecia de date (ocmponente de tip


date); sistemul de gestiune al bazei de date, care este un ansamblu de programe care realizeaz gestiunea i preelucrarea complex a datelor (componente software); un set de proceduri manuale i automate, precum i reglementri administrative, destinate bunei funcionri a sistemului; un dicionar al bazei de date (metabaz de date), ce conine informaii despre date, structura acestora, elemente de descriere a semanticii, statistici, documentaie etc.; echipamentele, sistemele de calculatoare, reele, periferice (componente hardware); personalul implicat: categorii de utilizatori finali i de specialitate (administratori, analiti-programatori, ingineri sistem, operatori). O baz de date apare ca o colecie de date stocate pe memorii externe adresabile, folosite de o mulime de utilizatori. ns o baz de date care nu are asociat un sistem de gestiune al acesteia, nu are sens, ea nu i atinge obiectivele pentru care a fost creat. Sistemul de gestiune al bazei de date SGBD reprezint software-ul propriu-zis al acesteia care asigur realizarea urmtoarelor activiti: definirea structurii bazei de date; ncrcarea datelor n baza de date; accesul la date (interogare, actualizare); ntreinerea bazei de date (colectarea i refolosirea spaiilor goale, refacerea bazei de date n cazul unui incident); reorganizarea bazei de date (restructurarea i modificarea strategiei de acces); securitatea datelor. Deci, sistemul de gestiune al bazei de date apare ca un sistem complex de programe care asigur interfaa ntre o baz de date i utilizatorii acestuia. n sens mai larg, sistemul de gestiune al bazelor de date este o component activ a bncilor de date, ce interacioneaz cu toate celelalte componente, cu toate categoriile de personal implicat n funcionarea bncii de date. Deci, se mai poate spune, c banca de date este format dintr-o baz de date i un SGBD asociat. n evoluia SGBD-urilor ar putea fi distinse dou etape calitativ diferite: n prima etap utilizatorul trebuia s cunoasc descrierea tuturor datelor din baz i uneori (cazul sistemului TOTAL) s folosesc numele cmpurilor din descriere, pentru formarea nregistrrilor logice specifice aplicaiilor; n etapa a doua, preocuparea principal a constat n a degaja pe utilizator de sarcina de a cunoate ntreaga structur a bazei de date, mai ales avnd n vedere faptul c aceste structuri au devenit foarte complexe. Se ajunge astfel la o gestiune independent a structurii generale a bazei de date, structur care ia denumirea de structur virtual, (nivel virtual de organizare a datelor). Apar deci dou nivele de independen: independena logic i independena fizic.

Independena logic nseamn posibilitatea modificrii structurii virtuale, fr modificarea programelor de aplicaii, iar independena fizic nseamn posibilitatea modificrii organizrii fizice a datelor, fr schimbarea structurii virtuale i deci fr schimbarea programelor de aplicaii. Specific acestei etape, este de asemenea apariia funciei de administrare a BD, apariia de proceduri perfecionate pentru securitate i protecie i posibilitatea obinerii de rspunsuri la ntrebri neanticipate. SGBD-urile realizate n aceast etap dispun de un limbaj de descriere a datelor i a relaiilor dintre date, de un limbaj de comand destinat a fi utilizat de programele aplicative i de un limbaj de interogare direct a bazei de date. Una dintre tendinele actuale de evoluie a limbajelor de interogare a bazelor de date este accentuarea caracterului neprocedural, fapt ce duce la apropierea acestor limbaje de limbajele naturale, devenind astfel mult mai accesibile utilizatorilor. De asemenea, necesitatea de implementare a sistemelor informatice distribuite, din punct de vedere teritorial, determin n prezent apariia bncilor de date distribuite avnd ca suport reele de calculatoare. Clasificarea sistemelor de gestiune a bazelor de date se poate realiza din punct de vedere a urmtoarelor criterii: a) al sistemelor de calcul pe care se implementeaz pot fi: sisteme de gestiune pentru calculatoare mari;

sisteme de gestiune pentru minicalculatoare; sisteme de gestiune pentru microcalculatoare.


n prezent se manifest tendina ca marea majoritate a sistemelor de gestiune a bazelor de date s fie compatibile pe platforme ct mai largi de sisteme de calcul; b) al limbajului pe care l utilizeaz sunt: sisteme cu limbaj gazd; sisteme cu limbaj autonom (proprii). Sistemele cu limbaj gazd realizeaz activitile de creare, actualizare i interogare a bazei de date, utiliznd limbaje la nivel nalt sau extensii ale acestora, proprii sistemului de calcul pe care se implementeaz baza de date. Avantajul acestor sisteme const n posibitile sporite ce le ofer limbajele de nivel nalt n elaborarea unor proceduri complexe. Ele prezint dezavantajul c formularea cerinelor nu este att de simplificat ca n cazul sistemelor cu limbaj autonom. c) al concepiei de organizare a datelor pe care le gestioneaz: sisteme de gestiune a bazelor de date cu modele clasice (structuri ierarhice, reea); sisteme de gestiune a bazelor de date cu modele semantice (orientate pe obiecte); d) al modului de localizare a bazelor de date: sisteme de gestiune a bazelor de date centralizate; sisteme de gestiune a bazelor de date distribuite. Baza de date distribuit este format din colecii mari de date stocate n reele distribuite de calculatoare interconectate fizico-funcional, prin care se asigur accesul unanim i controlat al tuturor utilizatorilor la datele existente n orice punct (nod) al reelei. Organizarea bazelor de date distribuite presupune accesul la date printr-un sistem de securitate, protecie i confidenialitate de cel mai nalt nivel, n condiii de prelucrare, accept abile pentru toate nodurile de date i n condiii de eficien economic ridicat. Distribuirea datelor se realizeaz prin dou metode: conectarea logico-fizic a tuturor compartimentelor funcionale implicate la baza de date distribuite, astfel nct fiecare compartiment s dispun de ntreaga structur a bazei de date;

segmentarea logico-funcional a bazei de date i stocarea subseturilor acesteia n nodurile reelei de calculatoare, la nivelul fiecrui compartiment n funcie de importana i volumul prelucrrilor realizate de ctre acestea. Realizarea bazelor de date distribuite presupune existena sistemului de gestiune a bazelor de date care asigur anumite funcii specifice: controlul prelucrrilor distribuite al datelor i al accesului concurent al tuturor utilizatorilor de date, indiferent de locul de stocare al acestora; optimizarea timpului de rspuns al sistemului, simultan cu meninerea integritii datelor chiar i n cazul apariiei de incidente sau efecte de natur hardware sau software; asigurarea copiilor multiple ale bazei de date distribuite pentru taote nodurile sistemului (grupurile de utilizatori) prin definirea unei arhitecturi hardware n concordan cu complexitatea sistemului informatic realizat. n mod concret ntreaga baz de date distribuite este privit ca o baz de date central, amplasat din punct de vedere fizic pe un calculator denumit generic FILE SERVER (SF). prin intermediul acestui calculator se asigur gestiunea ntregii baze de date centrale, inclusiv transmiterea de date ntre compartimentele funcionale. La nivelul fiecrui compartiment funcional este amplasat cel puin un calculator, privit ca o staie de lucru (WORK STATION-WS) prin intermediul creia se asigur legtura cu calculatorul central (FS) (figura 3.3.).
Utilizatorii NODULUI 1

NOD CENTRAL (FS)

Utilizatorii NODULUI n

ADMINISTRATOR

LOCALA BLD (WS1)

SGBD BDC (FS)

LOCALA BLD (WS2)

Figura 3.3. Arhitectura unui sistem de gestiune a BD.

Compartimentele funcionale organizeaz i gestioneaz la rndul lor baze de date locale, care pot avea aceeai structur cu baza de date central sau subseturi ale acesteia. Baza de date central va primi de la bazele de date locale amplasate la nivelul compartimentelor funcionale, numai acele entiti a cror memorare este justificat la nivelul punctului central de prelucrare (FS) n vederea unor prelucrri centralizate la nivelul sistemului informatic. Pentru accesarea bazelor de date distribuite productorii de SGBD-uri1 au impus limbajul SQL (Structural Query Language) i arhitectura Client/Server.
1

Piaa SGBD este mprit de 6 productori care mpreun dein peste 90% din serverele dedicate de date. Aceste firme sunt: Oracle, Informix; Sybase, Computer Associate, IBM i Microsoft.

Limbajul SQL dei a fost standardizat destul de trziu (ANSI-1991) este folosit de la mijlocul anilor 80 i permite interogarea bazei de date.

Client Cerere Client Rezultatul cererii Client Server

Surs de informatie (baz de date) Procesare (aritmetic si logic) Dispozitive (imprimant,alte periferice) Servicii-cereri aditionale ale altor servere

Figura 3.4. Reprezentarea unei tranzacii client/server

Astfel calculatoarele conectate n reea nu mai lucreaz efectiv cu baza de date i cu datele. Ele trimit serverului (bazei de date) instruciuni n acest limbaj, ele sunt procesate i analizate de server. Dup ce serverul termin de procesat datele trimite rezultatul napoi staiei de lucru care constat efectuarea instruciunii respective. Din punct de vedere al utilizatorului nu este nici o diferen: calculatorul funcioneaz ca i cum el ar deine toate datele. Arhitectura este ns diferit. Acest sistem client/server ofer uriae avantaje: calculatoarele nu sunt influenate negativ de creterea volumului de date; datele au aceeai structur i sunt manipulate de un singur program; serverul poate fi mbuntit treptat fr a influena calculatoarele concentrate; toate aplicaiile legate de baze de date folosesc acelai SGBD. Toate aceste lucruri duc la creterea securitii i performanei generale a sistemului. Astzi toate SGBD-urile folosesc un sistem de interogare de tip SQL, chiar dac ntre sistemele productorilor exist mici diferene. Acest limbaj permite utilizarea aceleiai baze de date de utilizatori concureni, asigur integritatea datelor i certitudinea c dac s -a fcut o modificare, ea poate fi vizualizat de toi utilizatorii bazei de date. Aceast structur de programare permite SGBD-urilor o foarte mare uurin i stabilitate. De asemenea, la fiecare modificare a unei nregistrri se poate pstra o oglind a nregistrrii, pentru a se putea face operaia invers modificrii. n acest fel un administrator al bazei de date poate cunoate oricnd ce nregistrri au fost modificate, de cine i cnd. SGBD-urile performante permit stocarea de proceduri pentru o execuie mai rapid a cererilor. Firmele care ofer SGBD-uri au creat sisteme foarte flexibile, care pot fi folosite pe mai multe sisteme de operare productive i sigure iar pentru baze de date de mari dimensiuni au construit sisteme scalabile. Scalabilitatea SGBD-ului beneficiaz de conectarea mai multor servere sau adugarea unor procesoare serverului pentru a face fa unui volum uria de date. Securitatea i integritatea datelor sunt primele lucruri care au fost luate n considerare de ntreprinderile care au implementat aceste sisteme. Au aprut noi programe software care arhivau i fceau copii de siguran ale bazei de date. De asemenea, piaa mediilor de dezvoltare a programelor cu care se constriuiesc aplicaii, care s poat accesa baza de date s-a dezvoltat

impresionant i este i n prezent n plin dezvoltare, existnd zeci de firme care ofer cele mai variate tipuri de programe. n carul departamentului informatic au aprut noi funcii: DBA DataBase Administrator, persoan care se ocup cu securitatea i integritatea datelor. Acest administrator al bazei de date administreaz toate aplicaiile care acceseaz baza de date, permite accesul utilizatorilor la date, studiaz apariia de noi programe n acest domeniu. Accesul la baza de date este foarte flexibil, existnd posibilitatea acordrii unor drepturi specifice pentru anumite tipuri de date sau anumite aciuni. Dac la mijlocul anilor 80 principalele date care populau bazele de date erau de tip text i nu numerice, SGBD-urile clasice, dup anul 1990 au nceput s apar noi tipuri de date, care trebuiau gestionate i analizate. Imaginile, la nceput, apoi sunetele, filmele video i datele spaiale sunt noile tipuri care se regsesc n bazele de date i pentru care SGBD-urilr asigur un suport adecvat, SGBDuri multimedia. Stocarea i manipularea acestor tipuri de date (care n general ocup foarte mult loc) a fost posibil datorit creterii performanelor hard-diskurilor i a procesoarelor din zilele noastre. Astzi exist baze de date care au dimensiuni de peste 1 terrabyte 1, date care pot fi gsite i modificate n cteva secunde. Performana serverelor a crescut enorm, astzi fiind posibil conectarea multor servere i funcionarea lor ca un singur ntreg. De asemenea, introducerea masiv a datelor de pe hard -diskuri n memoria RAM de tip electric permite atingerea unor viteze de lucru uriae2. Noile tipuri de date au permis apariia unor aplicaii care se folosesc n special n domeniul medical i geografic. Astfel, acum este posibil compararea btilor inimii sau a unor tomografii la preuri din ce n ce mai accesibile, SGBD-uri medicale. De asemenea folosind hrile existente n baza de date SGBD-uri spaiale care opereaz cu date spaiale, date ce prezint caracteristici de localizare i poziionare n spaiu a concurenilor, partenerilor, clienilor i altor caracteristici (mijloace de transport, structura populaiei din zona cercetat etc.).

1 2

Un terrabyte = 1024 gigabyte. Un text de 20 pagini n format text (.txt) ocup un spaiu de aproximativ 10 kilobytes. Pe un server performant Digital Alpha o baz de date Oracle a reuit s gseasc o nregistrare ntr -o baz de date cu o dimensiune de 140 gigabytes cu 180 milioane de nregistrri similare n numai 1,3 secunde.