Utilizarea rationala a sistemelor informatice (SI) moderne presupune: existenta unei colectii de date permanent actuale si necontradictorii; existenta unor pachete de programe care permit exploatarea colectiei de date de catre o gama cit mai larga de utilizatori, nu neaparat informaticieni; posibilitatea de a oferi utilizatorului informatii complexe intr-o forma sintetica, usor de interpretat la diverse nivele de decizie, intr-un timp cit mai scurt si la un pret de cost cit mai redus; asigurarea unei cit mai bune protectii a informatiei fata de tentativele de furt si distrugere accidentala sau voita. Aceste cerinte au impus aparitia unei forme noi de organizare a colectiilor de date numita baza de date si a unor forme specifice de manipulare a acesteia. Este practic imposibil sa se enunte o definitie care sa acopere toate elementele specifice conceptului "baza de date". Din aceasta cauza in literatura de specialitate au fost lansate o mare varietate de definitii, fiecare punand in evidenta elementele interesante dintr-un anumit punct de vedere. O prima definitie pe care o putem lua in considerare este urmatoarea : Se numeste baza de date o colectie de date conectate logic, exhaustiva, neredundanta si care suporta independenta aplicatiilor in raport cu structura datelor. O alta definitie interesanta a bazelor de date este urmatoarea: O baza de date este o structura integrata si partajata de date care contine: a) datele operationale specifice activitatii utilizatorilor; b) metadatele prin care se realizeaza integrarea datelor operationale si care descriu caracteristicile datelor si a legaturii dintre acestea. Ultima definitie pune in evidenta cele doua componente majore ale oricarei baze de date si anume datele propriuzise si metadatele. Cu alte cuvinte se poate spune ca: O baza de date este formata dintr-o colectie de date si descrierea formala a structurii acestora. In cazul bazelor de date gestiunea fisierelor care materializeaza baza de date se realizeaza cu ajutorul unei componente software specializate numita sistem de gestiune a bazelor de date (SGBD). SGBD reprezinta un pachet de programe care permit crearea, utilizarea si eliminarea obiectelor ce compun baza de date, in scopul cresterii randamentului global al uitlizatorului bazei de date si avand ca principal obiectiv reducerea dependentei aplicatiilor in raport cu structura datelor. Un SGBD realizeaza o gama larga de functii care au ca principal obiectiv asigurarea integritatii datelor in baza de date. Multe dintre aceste functii sunt transparente pentru utilizator si nu pot fi realizate decat in cadrul unui SGBD. Printre cele mai importante functii specifice SGBD-urilor, se pot aminti: Gestiunea dictionarului de date Accesul la date al programelor aplicative se realizeaza prin intermediul SGBD care cauta in dictionarul de date structura datelor si a legaturilor necesare rezolvarii problemei utilizatorului. In felul acesta se evita necesitatea pastrarii informatiilor privind structura datelor si a legaturilor in fiecare program aplicativ iar pe de alta parte se asigura partajarea datelor, fiecare program putand utiliza numai structurile si legaturile necesare. In cazul in care este necesara modificarea structurii datelor sau definirea unei noi legaturi, toate modificarile vor fi realizate numai in dictionarul de date, astfel incat aplicatiile nu sunt afectate decat in foarte mica masura sau chiar deloc. Deci, cu ajutorul dictionarului de date se implementeaza conceptul de independenta a aplicatiilor in raport cu structura datelor. 2) Gestiunea fisierelor de date Orice colectie de date dintr-un sistem informatic se materializeaza printr-un fisier sau o colectie de fisiere de date. Gestiunea acestor fisiere poate fi realizata cu mijloace specifice sau utilizand componenta SGF a sistemului de operare. SGBD permite crearea structurilor de date, tabele de indexare, declararea legaturilor intre date. Spre deosebire de SGF, componenta de gestiune a fisierelor din baza de date elimina necesitatea unor cunostinte complexe privind parametrii fizici ai fisierelor. La ora actuala SGBD gestioneaza si fisierele in care sunt pastrate definitiile altor obiecte necesare utilizarii unei baze de date, cum ar fi: ecrane; meniuri; forme; rapoarte; reguli de validare; module program; structuri de date speciale pentru informatie multimedia (audio, video, imagini). 3) Transformarea datelor Datele introduse de utilizator nu au intotdeauna structura iedntica cu cea definita in baza de date. Este sarcina SGBD-ului sa transforme datele introduse astfel incat acestea sa poata fi pastrate in baza de date si sa avertizeze in cazul in care trnsformarea nu este posibila. Exemplu: Daca pentru atributul NUME au fost rezervate 20 de caractere si se introduce un nume pe 25 caractere, sistemul trebuie sa refuze inscrierea in baza de date si sa returneze un mesaj de eroare. La afisarea rapoartelor are loc transformarea inversa, din formatul de reprezentare pe suport fizic (unic) intr-unul din formatele dorite de utilizator. Toate aceste transformari se realizeaza automat prin mijloacele software oferite de SGBD astfel incat proiectantul de aplicatii si utilizatorul pot sa se concentreze pe rezolvarea problemelor propriuzise. 4) Gestiunea aplicatiilor SGBD-urile trebuie sa ofere limbaje specializate pentru crearea si interogarea bazelor de date. Pot fi puse in evidenta mai multe categorii de limbaje: limbaje de descriere a datelor limbaje de manipulare a datelor limbaje de redactare a rapoartelor limbaje procedurale. Limbajele de descriere a datelor permit descrierea structurii datelor, regulilor de validare, restrictiilor de integritate, valorilor implicite, indecsilor, viziunilor etc. Limbajele de manipulare a datelor contin comenzi care permit selectia si actualizarea continutului bazei da date. Limbajele de descriere a datelor si limbajele de manipulare a datelor sunt limbaje cu un grad inalt de neproceduralitate. Limbajele de redactare a rapoartelor permit formatarea datelor, aranjarea in pagina, setarea parametrilor specifici pentru afisarea pe display sau imprimanta etc. Limbajele procedurale permit scrierea de programe ce realizeaza prelucrarea datelor pe baza unor algoritmi de complexitate mai mare, ce nu pot fi imlpementati numai la nivelul limbajului de manipulare a datelor. SGBD-urile moderne dispun de limbaje procedurale proprii cum ar fi PL/SQL pentru Oracle sau VisualBasic pentru Acces dar permit si utilizarea unor limbaje de uz general cum ar fi COBOL, C, PASCAL, FORTRAN. Pe de alta parte multe din limbajele de programare moderne includ facilitati speciale pentru interogarea bazelor de date. Evident aceasta clasificare are un caracter metodologic, limitele intre cele patru categorii de limbaje fiind relativ greu de stabilit deoarece ele pot coexista ca seturi de comenzi in cadrul aceluiasi limbaj. La ora actuala aproape toate SGBD-urile dispun de facilitati de descriere si interogare a bazelor de date neprocedurale, de tipul limbajelor QBE (Query By Example) care exploateaza pe larg facilitatile programarii vizuale, fara a necesita scrierea de cod. Acest mod de exploatare a bazelor de date permite utilizarea lor chiar de catre cei fara o pregatire speciala in domeniu insa gama problemelor ce pot fi rezolvate de catre acestea este relativ restransa. 5) Importul si exportul datelor In multe situatii anumite date gestionate cu un anumit SGBD trebuie sa poata fi prelucrate cu ajutorul altui SGBD de acelasi tip sau de tip diferit. In acest caz se impune conversia datelor. Conversia poate fi realizata de catre sistemul care transmite datele (export de date) sau de catre sistemul care preia date (import de date). Conversia este automata si simplifica foarte mult dezvoltarea unor aplicatii complexe peste mai multe baze de date de tip diferit. 6) Controlul securitatii datelor Un SGBD trebuie sa ofere mijloacele necesare dezvoltarii unui sistem de securitate prin care sa se specifice: utilizatorii care au acces la date; la ce date are acces fiecare categorie de utilizatori; ce operatii poate executa fiecare utilizator. Aceste facilitati sunt deosebit de importante in sistemele multiutilizator cand trebuie asigurata integritatea si consistenta datelor. SGBD-ul trebuie sa asigure accesul concurent la date. Un mecanism puternic pentru implementarea controlului concurentei il reprezinta mecanismul tranzactiilor. Tranzactia reprezinta un grup de comenzi si proceduri a caror executie trebuie finalizata pentru a considera ca a fost incheiata tranzactia. Daca cel putin o componenta a tranzactiei esueaza, se considera ca intreaga tranzactie a esuat si efectul ei asupra bazei de date este nul (ca si cum nu s-ar fi intamplat nimic). 7) Gestiunea cópiilor si refacerii Pentru a asigura integritatea datelor, periodic se realizeaza cópii de siguranta. Desi aparent simpla, aceasta operatie este mare consumatoare de timp si resurse si chiar periculoasa, putand duce la pierdere de informatie in sistemele foarte mari. Stabilirea momentului in care se realizeaza o noua copie reprezinta o sarcina a administratorului bazei de date. In urma unor accidente sau distrugeri voite se pune problema refacerii continutului bazei da date. Fiecare SGBD dispune de mijloace specifice care asigura refacerea continutului bazei de date cu cheltuieli minime si intr-un interval de timp cat mai scurt. 8) Gestiunea comunicatiilor de date Multe SGBD-uri permit utilizarea bazelor de date in retea. In principal exista doua moduri de abordare a utilizarii bazelor de date in retea: a) Baza de date centralizata intr-un nod al retelei si aplicatii lansate de utilizatori din diverse noduri ale retelei. b) Atat bazele de date cat si aplicatiile sunt distribuite in diverse noduri ale retelei (baze de date distribuite). Fiecare varianta are avantaje si dezavantaje si se recomanda intr-o anumita clasa de aplicatii. La ora actuala se dezvolta din ce in ce mai mult aplicatiile care acceseaza bazele de date prin Internet prin intermediul unor browsere consacrate cum sunt Netscape sau Explorer ori prin browsere create special. 2.2.3 Clasificari ale bazelor de date La mai putin de 40 de ani de la folosirea pentru prima oara a termenului “baza de date”, exista o varietate deosebit de mare de obiecte numite baze de date. Acestea au evoluat atat in ce priveste continutul ( de la siruri de caractere, numere si date calendaristice la sunete si imagini) cat si din punct de vedere al organizarii (de la model ierarhic la model relational-obiectual sau multidimensional) si al posibilitatilor de utilizare (de la obtinerea de informatie la obtinerea de cunostinte). Coexistenta unei mari varietati de tipuri de baze de date a condus la aparitia unui limbaj deseori creator de confuzii, mai ales datorita folosirii de catre firme diferite a aceluiasi termen cu semnificatii diferite dar si datorita abuzului in folosirea de catre massmedia a unor termeni de specialitate. Din aceasta cauza cunoasterea clasificarii bazelor de date are nu numai o importanta metodologica ci si practica deoarece fiecare categorie necesita metode de proiectare proprii, tehnologii software si resurse hardware specifice. Cresterea exploziva a aplicatiilor peste baze de date, continua reevaluare a rolului acestora intr-un sistem informational, au condus la aparitia unor noi tipuri de baze de date sau la redefinirea vechilor tipuri. Acest proces nu este lipsit de pericole, conducand uneori la confuzii ce pot avea drept consecinta achizitii de software neperformant sau chiar inutil, abordari gresite ale unor rezolvari, cu mari cheltuieli materiale si umane. Din aceasta cauza se impune o cunoastere temeinica a semnificatiei atribuite fiecarui termen de catre diversi autori si mai ales de catre marile firmele producatoare de software. Desigur, in afara criteriilor prezentate in continuare, mai pot fi luate in considerare si alte criterii. Criteriile prezentate au fost selectate ca fiind probabil cele mai cunoscute si utilizate la ora actuala, ele putand pune in evidenta categorii de baze de date cu mare aplicabilitate practica. 1) Clasificarea dupa continut Din punctul de vedere al continutului pot fi puse in evidenta urmatoarele tipuri de baze de date: baze de date traditionale; baze de date audio; baze de date video; baze de date multimedia; baze de date spatiale; baze de date documentare. Bazele de date traditionale manipuleaza in principal date de tipul numere, siruri de caractere, date calendaristice. Au o larga aplicabilitate in domenii ca gestiune, evidenta, statistica. Sunt probabil cele mai larg utilizate baze de date in toate domeniile economice, sociale, stiintifice atat in sistemele de suport a tranzactiilor cat si in sistemele de suport a deciziilor. Aplicatiile pot fi de complexitati diferite, de la simple cautari ale unor date pana la tranzactii de mare complexitate sau prelucrari pe baza unor algoritmi sofisticati in scopul extragerii de cunostinte. Bazele de date audio si video permit gestiunea eficienta a unor inregistrari audio sau video. Implica structuri de date specifice, utilizeaza pe larg metode de compresie a datelor si necesita un volum mare de memorie. Aplicatiile sunt relativ simple, axate in special pe pastrarea si redarea unor inregistrari. Bazele de date multimedia contin informatii de natura foarte diferita: numere, siruri de caractere, date calendaristice; texte de mari dimensiuni; referinte; sunete, grafica, imagini; animatie, video. Evident, diversitatea tipurilor de date implica o mare diversitate de echipamente pentru achizitia datelor si pentru prezentarea informatiei din baza de date, structuri de date si tehnologii software complexe. Tehnicile de memorare si cautare sunt mult mai sofisticate asigurand cautare dupa cuvinte cheie, dupa context, dupa caracteristici. Sunt larg utilizate in domenii ca proiectarea asistata de calculator, jocuri video, invatare la distanta, documentare etc. Aplicatiile pot fi traditionale (cautare si redare) sau specifice (identificare dupa caracteristici, prelucrare, combinare intre date de natura diferita). Anumite facilitati multimedia au fost introduse in toate SGBD-urile pentru baze de date traditionale care pot pastra la ora actuala texte, imagini sau chiar inregistrari audio si video. Totusi cautarea informatiilor se reduce de cele mai multe ori la cautari dupa cuvinte cheie si nu exista mijloace de prelucrare specifice ci doar de afisare sau redare. Progrese deosebite au fost realizate in ceea ce priveste editarea unor rapoarte multimedia care pot sa contina date traditionale, imagini, animatie, video, referinte la diverse surse. Principala problema o reprezinta volumul foarte mare de date si implicit timpul de cautare. Din aceasta cauza au fost dezvoltate tehnici specifice de compresie a datelor si de indexare. Bazele de date spatiale Obiectele spatiale constituite din linii, suprafete, volume si obiecte de dimensiuni superioare sunt frecvent utilizate in aplicatii de proiectare asistata de calculator, cartografie, sisteme informatice geografice. Daca se ataseaza si o dimensiune temporala, obiectele devin spatio-temporale. Acestea sunt descrise atat prin atribute spatiale (lungime, configuratie, perimetru, suprafata, volum etc) cat si prin atribute nespatiale (data generarii, proprietar, apartenenta la o structura superioara etc). Valorile atributelor spatiale ale obiectelor reprezinta datele spatiale. Datele spatiale pot fi definite pe domenii de valori discrete (coordonate) sau continue (segmente de dreapta, regiuni etc). Bazele de date spatiale reprezinta un ansamblu de colectii de date spatiale si nespatiale, organizate in scopul facilitarii gestiunii si folosirii multiutilizator. Peste o baza de date spatiala pot fi formulate doua tipuri de cereri: cereri generale ce nu necesita facilitati speciale de tratare a datelor spatiale: afisarea datelor; regasirea unui sablon; anticiparea unui comportament de obiect spatial. cereri speciale: locale; zonale; de vecinatate (cele mai dificile deoarece necesita evaluarea proximitatii – de exemplu determinarea drumului care trece cel mai aproape de o regiune specificata). Deoarece atat intrarile cat si iesirile dintr-o baza de date spatiala sunt elemente grafice, SGBD-urile pentru astfel de baze de date trebuie sa ofere interfete grafice deosebit de puternice, sustinute de echipamente de scanare, afisare si tiparire corespunzatoare. Baze de date documentare Dupa cum arata si numele, aceste baze de date contin diverse documente in format editabil pe calculator sau imagine (pentru autentificare). Principalele operatii realizate pe aceste baze de date sunt cautarile dupa diverse criterii (cuvinte cheie, expresii, sabloane etc). Implica utilizarea unor structuri de date specifice care sa simplifice cautarile (fisiere inverse, lanturi de pointeri, indexari sofisticate etc). 2) Clasificare din punctul de vedere al numarului de utilizatori Monoutilizator – baze de date foarte mici, implementate pe PC pentru uzul personal sau al unui grup restrans de persoane. La un moment dat are acces un singur utilizator. Gestiunea fisierelor este foarte simpla. Multiutilizator – baze de date peste care pot lansa cereri simultan mai multi utilizatori. Necesita masuri speciale de protectie a informatiei atat pentru limitarea accesului la date cat si pentru eliminarea unor inconsistente logice datorate intarzierilor in propagarea modificarilor realizate de un utilizator in continutul bazei de date. 3) Clasificare din punctul de vedere al distribuirii datelor si aplicatiilor Baze de date centralizate – implementate pe un singur calculator sau intr-un singur nod al unei retele de calculatoare. Necesita in general calculatoare foarte puternice, cu capacitate mare a memoriei secundare si viteza de prelucrare mare (eventual facilitati de prelucrare paralela). Nu se accepta duplicarea datelor in cazul bazelor de date operationale. Aplicatiile pot fi rulate pe acelasi calculator sau la distanta, pe terminalul beneficiarului. Baze de date distribuite – implementate in cel putin doua noduri ale unei retele de calculatoare si exista cel putin o aplicatie care utilizeaza date din mai multe noduri. SGBD-urile destinate gestiunii bazelor de date distribuite trebuie sa ofere mijloace puternice de sincronizare, protectie si realizare a tranzactiilor, fiind in general produse software foarte scumpe. Datele sunt astfel distribuite in noduri incat sa asigure servirea aplicatiilor cu un minim de trafic prin retea. Se accepta duplicarea unor date in mai multe noduri ale retelei pentru optimizarea performantelor. Este sarcina SGBD-ului sa transmita toate modificarile dintr-o copie in toate celelalte cópii pentru a mentine integritatea logica a datelor. Observatie: Nu orice baza de date dezvoltata intr-o retea de calculatoare este o baza de date distribuita. Caracterul distribuit al bazei de date rezulta, conform celor discutate anterior si din interactiunea dintre date si aplicatii. O baza de date poate fi distribuita din punctul de vedere al gestiunii datelor dar poate fi locala (centralizata ) din punctul de vedere al aplicatiilor care folosesc intotdeauna numai datele dintr-un singur nod. Intr-un astfel de caz nu putem vorbi de o baza de date distribuita propriuzisa deoarece in mod natural aceasta poate fi transformata intr-o reuniune de baze de date gestionate local. Baze de date mobile – pot fi considerate ca un caz particular de baze de date distribuite. Aparitia lor se datoreaza mai multor factori, cum ar fi: cresterea puterii de calcul si scaderea pretului pentru laptop-uri si notebook-uri; dezvoltarea unor aplicatii care implica culegerea de date on-line in zone in care nu exista posibilitati imediate de cuplare la o retea de calculatoare; dezvoltarea unor aplicatii ce utilizeaza date dintr-o baza de date centralizata fara a avea posibilitatea conectarii permanente la acea baza de date; dezvoltarea telefoniei celulare si posibilitatea utilizarii directe a acesteia in transferul datelor; extinderea unor operatii comerciale si financiare la nivel mondial prin globalizarea economiei mondiale, ceea ce implica calatorii la mare distanta ce acopera zone cu nivel economic si tehnologic foarte diferit. Principalele caracteristici ale bazelor de date mobile sunt: se dezvolta pe sisteme de calcul cu o putere de calcul relativ mica; se accepta un grad inalt de replicare a datelor (aceleasi date pot fi copiate pe zeci sau sute de microcalculatoare portabile); apar mari diferente in ceea ce priveste actualizarea datelor in scopul eliminarii inconsistentelor logice; in timp ce actualizarea se face relativ rar (zilnic sau chiar mai rar) in cazul unor calculatoare cu posibilitati slabe de cuplare la retea, ea poate fi realizata in timp real pentru calculatoarele ce utilizeaza telefonia mobila pentru transferul datelor ; utilizarea unei replici este in general monoutilizator; realizarea tranzactiilor ridica probleme dificile datorita conditiilor mult mai grele de realizare a transferului de date; dinamica de dezvoltare foarte mare datorita progreselor tehnologice din domeniul miniaturizarii, transmisiilor de date, retelelor de calculatoare, suportului teoretic si software in domeniul calculului mobil (mobile computing) etc. Clasificarea bazelor de date intr-o intreprindere Pentru a simplifica incercarea de clasificare a bazelor de date utilizate intr-o intreprindere, pot fi utilizate aceleasi trei criterii de clasificare utilizate si pentru clasificarea datelor dintr-o intreprindere (vezi 1.3.3) adica: nivel de detaliere; timp; domeniul de utilizare. Utilizand aceste trei dimensiuni, clasificarea bazelor de date poate fi reprezentata prin diagrama din figura 2.5. Daca pana la sfarsitul anilor optzeci un accent deosebit a fost pus pe pastrarea datelor curente ale intreprinderii si dezvoltarea unor aplicatii specifice managementului global sau sectorial care implica doar extragerea de informatie din datele disponibile, ultimul deceniu este caracterizat de trecerea la extragerea asistata de calculator a cunostintelor din date, ceea ce implica analiza unui mare volum de date atat curente cat si istorice. Acest lucru a impus aparitia unor noi tehnologii de gestiune a datelor si anume magaziile si targurile de date. Pentru a intelege mai bine aceste concepte este utila punerea in evidenta a corespondentei intre diversele categorii de date discutate anterior si tehnologiile de gestiune a datelor. Aceasta corespondenta poate fi mai usor inteleasa cu ajutorul diagramei din figura 2.5.
Fig. 2.5 Bazele de date operationale contin toate datele actuale ale intreprinderii, la cel mai inalt nivel de detaliere (de exemplu toate operatiile comerciale in curs de desfasurare ale unei intreprinderi, toate notele obtinute la o materie in anul universitar curent etc). Astfel de date sunt deosebit de utile pentru crearea unei imagini “la zi” asupra activitatii intreprinderii, depistarea unor fraude, clasificarea clientilor, mentinerea in limite normale a stocurilor etc. Bazele de date operationale se caracterizeaza printr-o rata mare a achizitiilor si modificarilor de date. Procesul de baza il reprezinta tranzactia. Tranzactia reprezinta un grup de operatii asupra continutului bazei de date a caror realizare este obligatorie pentru a putea considera tranzactia corect incheiata. Daca o singura operatie din cadrul tranzactiei esueaza, intreaga tranzactie esueaza si trebuie reluata de la inceput, ca si cum nici o operatie nu ar fi fost efectuata. SGBD-urile care asigura gestiunea bazelor de date operationale trebuie sa dispuna de mecanisme puternice pentru realizarea in timp real a tranzactiilor (On Line Transaction Processing-OLTP). La nivel conceptual se utilizeza in special modelul entitate-relatie. Modelul datelor utilizat la ora actuala pentru implementarea bazele de date operationale este preponderent modelul relational cu un grad inalt de normalizare - cel putin forma normala 3 (mai exista totusi in exploatare si baze de date operationale bazate pe modelele ierarhic sau retea). Normalizarea relatiilor are ca scop eliminarea anomaliilor la actualizarea datelor. In cazul bazelor de date centralizate nu se accepta redundanta datelor pentru a elimina inconsistenta logica. In bazele de date distribuite se poate accepta o anumita redundanta prin replicarea unor date in noduri diferite dar se vor lua masuri speciale pentru eliminarea inconsistentelor logice datorate actualizarilor in baza de date. Magazia de date (Data Warehouse) poate fi privita ca o colectie de instantanee ale datelor operationale la nivelul intreprinderii in momente de timp bine determinate. Este o baza de date centralizata, nevolatila, ce contine date integrate la nivel de intreprindere. O caracteristica foarte importanta o reprezinta lipsa operatiilor de actualizare si modificare a datelor, deci a tranzactiilor. Dupa ce au fost introduse in magazia de date, datele nu mai pot fi eliminate sau modificate. De aceea la incarcarea datelor in magazie acestea sunt supuse unui tratament special de “curatire” in scopul eliminarii tuturor erorilor de achizitie, eliminarea unor inconsistente logice, punerea de acord a standardelor de reprezentare in diverse surse de date etc. Pe linga datele istorice detaliate, magazia de date poate sa contina si o serie de date sintetice deduse din acestea, pentru a simplifica procesele de analiza a datelor si pentru cresterea vitezei de cautare. Tot pentru cresterea vitezei de lucru se accepta si o anumita redundanta a datelor in sensul ca aceleasi date pot sa apara in structuri de date diferite, corespunzatoare unor legaturi logice diferite. Acest lucru nu afecteaza consistenta logica a datelor deoarece nu exista operatii de actualizare a datelor, iar diversele replici au o sursa unica. Continutul magaziei de date este variabil in timp in sensul ca anumite date vor trebui modificate in functie de noile achizitii. De exemplu, introducerea veniturilor pe ultima luna va afecta date de tipul venit mediu, venit global, clasamente etc. La nivel conceptual se utilizeaza modelele multidimensionale. Pentru implementare se poate utiliza si modelul relational nenormalizat ceea ce complica proiectarea structurii bazei de date dar creste randamentul cautarilor. Se folosesc pe scara larga jonctiunile predefinite pentru a pastra in aceeasi structura de date datele specifice unei anumite legaturi. Acumularea in timp a datelor din magazia de date permite crearea unei imagini tot mai clare asupra evolutiei in treprinderii dar complica problemele de gestiune a datelor. Procesele de prelucrare specifice sunt cele de analiza in scopul extragerii de informatii si cunostinte. Din aceasta cauza SGBD-urile care asigura gestiunea magaziilor de date trebuie pe de o parte sa asigure gestiunea si protectia unui volum foarte mare de date iar pe de alta parte iar pe de alta parte sa puna la dispozitia utilizatorilor mijloace software specifice analizei in timp real a datelor (On Line Analysis Processing – OLAP). Targurile de date (Data Marts) au o definitie acceptata doar partial de catre producatorii de software si beneficiari. In timp ce unii vad in aceasta structura doar o magazie de date la nivel de sector, altii considera ca targul de date are caracteristici specifice care il diferentiaza net de magazia de date. Singurul lucru cu care toata lumea este de acord este faptul ca targul de date se refera doar la un sector de activitate sau un segment al afacerilor. Problema consta in “ce fel de date se introduc in targul de date”. Teoretic, indiferent daca este vorba de analiza activitatii unui sector sau de managementul curent, targul de date va contine date sintetice obtinute prin agregare si sumarizare. Din punct de vedere practic insa, se accepta ca in targul de date sa fie introduse si date detaliate specifice sectorului, pentru a simplifica pe de o parte procesul de analiza iar pe de alta parte sa permita o integrare mai rapida a targului de date intr-o magazie de date. Problema a aparut datorita faptului ca pretul de cost al implementarii unei magazii de date si timpul necesar implementarii sunt foarte mari ceea ce descurajeaza multi beneficiari. In aceasta situatie ar fi preferabil sa se inceapa implementarea la nivel sectorial ceea ce ar permite o mai buna gestiune a fondurilor si o reducere considerabila a timpului de dare in folosinta. Totusi, aceasta abordare este periculoasa deoarece viziunile la nivel sectorial pot sa piarda multe din elementele specifice unei abordari globale, multisectoriale. Ar fi o mare greseala sa se considere ca o magazie de date este o simpla reuniune a targurilor de date specifice sectoarelor ce compun intreprinderea, fara a lua in considerare interactiunile dintre sectoare. Este evident ca nu se pot formula concluzii juste privind evolutia unui sector daca nu se ia in considerare evolutia celorlalte sectoare in aceeasi perioada de timp deoarece toate consuma din aceleasi resurse si beneficiile dintr-un sector pot fi utilizate pentru dezvoltarea altor sectoare. 5) Clasificarea dupa marime Este cea mai discutabila clasificare deoarece depinde atat de evolutia resurselor hardware (in special de capacitatea memoriei secundare si viteza de prelucrare) cat si de interesele practice intr-o anumita etapa istorica. In figura 2.6 este prezentata clasificarea propusa de Gartner Group la sfarsitul anului 1998. Se observa ca aceasta clasificare face distinctie intre baze de date pentru sistemele de suport a tranzactiilor (baze de date operationale) si bazele de date pentru sistemele de suport a analizei (magazii de date). Clasificarea propusa pune in evidenta (pentru fiecare caz in parte) patru categorii de colectii de date: mici; mijlocii; mari; foarte mari. Fig. 2.6 Colectiile de date mici si mijlocii sunt implementate pe microcalculatoare sau minicalculatoare, mono sau multiutilizator. Corespund unor utilizatori particulari, unor intreprinderi mici sau sectoare de activitate inguste. Nu ridica probleme deosebite in ceea ce priveste proiectarea structurii datelor si gestiunea datelor. Colectiile de date mari si foarte mari implica costuri de proiectare si implementare deosebite, sisteme de calcul puternice cu facilitati speciale pentru accesul rapid la date si prelucrarea datelor. Gestiunea datelor implica utilizarea unor tehnologii informatice speciale. Pierderea de informatie poate avea urmari catastrofale deci se impun masuri deosebite pentru protectia si securitatea datelor. In multe cazuri datele au un caracter strategic si secret iar SGBD-urile trebuie sa permita gestiunea riguroasa a mii de aplicatii si utilizatori care lucreaza simultan si solicita acces de la distante foarte mari in conditii critice de timp, fiabilitate a legaturilor, securitate. Cele cateva criterii de clasificare a datelor prezentate anterior au scos in evidenta importanta practica a clasificarii bazelor de date pentru o apreciere corecta a necesarului de resurse hardware si software si a posibilitatilor de satisfacere a cererilor formulate de beneficiar. In afara criteriilor prezentate exista si alte criterii de a clasifica bazele de date ce vor fi prezentate pe parcursul lucrarii deoarece necesita cunostinte suplimentare.
Obiectele spatiale constituite din linii, suprafete, volume si obiecte de dimensiuni superioare sunt frecvent utilizate in aplicatii de proiectare asistata de calculator, cartografie, sisteme informatice geografice. Daca se ataseaza si o dimensiune temporala, obiectele devin spatio-temporale. Acestea sunt descrise atat prin atribute spatiale (lungime, configuratie, perimetru, suprafata, volum etc) cat si prin atribute nespatiale (data generarii, proprietar, apartenenta la o structura superioara etc). Valorile atributelor spatiale ale obiectelor reprezinta datele spatiale. Datele spatiale pot fi definite pe domenii de valori discrete (coordonate) sau continue (segmente de dreapta, regiuni etc). Bazele de date spatiale reprezinta un ansamblu de colectii de date spatiale si nespatiale, organizate in scopul facilitarii gestiunii si folosirii multiutilizator. Peste o baza de date spatiala pot fi formulate doua tipuri de cereri: cereri generale ce nu necesita facilitati speciale de tratare a datelor spatiale: afisarea datelor; regasirea unui sablon; anticiparea unui comportament de obiect spatial. cereri speciale: locale; zonale; de vecinatate (cele mai dificile deoarece necesita evaluarea proximitatii – de exemplu determinarea drumului care trece cel mai aproape de o regiune specificata). Deoarece atat intrarile cat si iesirile dintr-o baza de date spatiala sunt elemente grafice, SGBD-urile pentru astfel de baze de date trebuie sa ofere interfete grafice deosebit de puternice, sustinute de echipamente de scanare, afisare si tiparire corespunzatoare. Baze de date spatiale (GIS) –modelul de date . Sisteme de gestiune a bazelor de date spatiale Caracteristici Limbaje de definire/manipulare Exemple de SGBD-uri 45397pfx56jqj5u Administrare Protectia datelor
Bazele de date spatiale