CursBD Lungu Velicanu Botha

download CursBD Lungu Velicanu Botha

of 52

Transcript of CursBD Lungu Velicanu Botha

ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 1 BAZE DE DATE Autori: Prof.univ.dr. LUNGU Ion Prof.univ.dr. VELICANU Manole Asist.univ.drd. BOTHA Iuliana CUPRINS Unitatea de nvare 1: ORGANIZAREA DATELOR N MEMORIA EXTERN Unitatea de nvare 2: BAZE DE DATE NOIUNI FUNDAMENTALE Unitatea de nvare 3: BAZE DE DATE RELAIONALE (BDR) Unitatea de nvare 4: METODOLOGIA DE REALIZARE A BAZELOR DE DATE Unitatea de nvare 5: BAZE DE DATE ORIENTATE OBIECT ( BDOO) Introducere Cursul de Baze de datese adreseaz studenilor nscrii la programul de studiu ID, organizat de facultatea de Cibernetic, Statistic i Informatic Economic i facepartedinplanuldenvmntaferentsecieideInformaticEconomic, anul 2, semestrul 1. OBIECTIVULGENERALalcursuluideBazededatevizeazpregtirea studenilorndomeniulproiectriibazelordedateialutilizriiacestoran diferite domenii economico-sociale. OBIECTIVELESPECIFICEPRINCIPALEaleacestuicurs,concretizaten competenele dobndite dup parcurgerea i asimilarea lui sunt urmtoarele: familiarizarea cu posibilitile de utilizare ale bazelor de date indiferent de tipul acestora; dobndirea abilitii de a proiecta baze de date relaionale; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 2 familiarizareacuprincipalelecaracteristicialebazelordedateorientate obiect. Pentruobunnelegereanoiunilorteoreticeipracticeprezentatenacest curs,estenecesarparcurgereaanterioaradisciplinelorStructuridedate, Programarea calculatoarelor, Sisteme de operare. Unitatea de nvare 1:ORGANIZAREA DATELOR N MEMORIA EXTERN Cuprins 1.1. Obiective 1.2. Evoluia organizrii datelor 1.3. Organizarea datelor n fiiere 1.4. Modele de structurare a datelor n baze de date 1.5. Protecia bazelor de date 1.6. Rezumat 1.7. Teste de autoevaluare 1.8. Rspunsuri i comentarii la testele de autoevaluare 1.9. Bibliografia unitii de nvare 1 1.1. Obiective Dup studiul acestei uniti de nvare vei avea cunotine despre: necesitatea organizrii datelor n memoria extern, comparativ cu memoria intern; evoluia organizrii datelor pornind de la fiiere (primul mod de organizare a datelor n memoria extern) i ajungndu-se la ultimele tipuri de baze de date, cele orientate obiect; noiuneadefiiericelemaiimportanteaspectedeorganizareadatelor: operaii, structura, modul de organizare, modul de acces; organizareadatelornbazededateconformmodelelorlogicededate fundamentale: ierarhic, reea, relaional, orientat obiect; proteciabazelordedate,tratatprinceledouaspectealesale: securitatea, integritatea. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 3 Durata medie a unei uniti de studiu individual 4 ore 1.2. Evoluia organizrii datelor oOrganizarea datelor nseamn definirea i structurarea datelor n memoria intern sau n memoria extern (n colecii) i stabilirea legturilor ntre date, conform unui model de date. oSintetiznd,evoluiaorganizriidatelornmemoriaexternaavutn vedere cteva aspecte Aspecte Etape(1) Mod de organizare a datelor (2) Structura de date (3) Mod de prelucrare (4) Redundan (5) Software utilizat (6) 1. nainte de 1965 Fiiere secveniale Logic coincide cu fizic Pe loturi (batch) Mare, necontrolat Operaii simple de I/E (limaje asamblare i universal) 2. Anii 60 Fiiere secveniale, indexate, directe Logic i fizic Loturi, on-line Mare, necontrolat Chei simple de acces (limbaje universale) 3. Anii 70 Baze de date arborescente, reea Logic, fizic, conceptual Loturi, conversai-onal Scade, controlat Chei multiple de acces, legturi ntre date, protecia (SGBD) 4. Sfritul anilor 70 pn acum Baze de date relaionale Logic, fizic, conceptual Conversai-onal, interactiv Mic, controlat Limbaje de regsire, protecie, concuren (SGBD) 5. Sfritul anilor 80 pn acum Baze de date orientate obiect Logic, fizic, conceptual Interactiv Minim, controlat Limbaje din programarea OO (SGBD) Not. Necesitatea organizrii datelor n memoria extern rezult analiznd cteva criterii de comparaie dintre memoria intern i cea extern: CRITERIUMEM. INTERNMEM. EXTERN CostMareMic VitezMareMic Capacitate(volum date)MicMare PersistenNuDa Organizare dateVariabile, constante, masive, pointeri etc. Fiiere, baze de date ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 4 1.3. Organizarea datelor n fiiere oFisierul este o colecie organizat de date unite dup criterii comune calitative, de prelucrare i scop.oToatelimbajeledeprogramareuniversalelucreazcuaceast noiune, pentru organizarea datelor n memoria extern. Sistemele de baz de date lucreaz cu aceast noiune i n plus o dezvolt n noiunea de baz de date. Prezentm, n continuare, cteva noiuni fumdamentale utilizate n organizarea datelor n fiiere. De aceste noiuni se ine seama i la baze de date. 1.Caracteristici ale unui fiier: actualizarea se refer la trei operaii : adaugarea, modificarea, tergerea de nregistrri; natura datelor din fiier trebuie s fie omogen (s se refere la aceeai entitate din lumea real); prelucrarea datelor din fiier se refer la tipul i frecvena operaiilor efectuate pe nregistrri; volumul de date din fiier (se msoar n numr de octei). 2.Structura unui fiier: partea de identificare este dat de etichetele plasate la nceputul i sfritul fiierului; partea de date este colecia omogen de date ce aparin aceleai entiti din lumea real structurat astfel: fiier nregistrricmpurivalori. 3.Modul de organizare reprezint modul de dispunere a nregistrrilor pe suportul fizic i presupune reguli de memorare a datelor. Categorii de moduri de organizare a fiierelor: a) Standard Este cea mai veche i exist pe toate tipurile de calculatoare. nregistrarea este format dintr-un ir de caractere dispus pe o linie acceptat de periferic. Toate limbajele recunosc fiiere standard de intrare i ieire. b) Clasic (elementar) Organizarea se face pe medii magnetice sau optice. Tipuri: SECVENIAL nregistrrile sunt dispuse n fiier una dup alta fr nici o ordine prestabilit. Localizarea unei nregistrri se face prin parcurgerea tuturor nregistrrilor anterioare ei (secvenial). ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 5 Toate sistemele de operare i limbajele de programare accept organizarea secvenial. RELATIV nregistrrile sunt dispuse n fiier una dup alta i numerotate (de ctre sistem) de la 0 sau 1 la cte sunt (numr de realizare). Localizarea unei nregistrri se poate face secvenial sau direct prin numrul de realizare. INDEXAT-SECVENIAL nregistrrile sunt dispuse n fiier n ordine strict cresctoare dup o cheie (face parte din nregistrare). Cheia este unul sau mai multe cmpuri care identific n mod unic o nregistrare. Fiierului i este ataat o tabel de indeci care face legtura ntre valoarea cheii i adresa fizic a nregistrrii. Localizarea unei nregistrri se poate face secvenial dar i direct prin cheie: se compar cheia nregistrrii cutate cu indecii din tabela de index i se localizeaz direct partea fizic a fiierului n care se afl nregistrarea cutat; n partea fizic localizat se face o cutare secvenial a nregistrrii dorite. c) Special (complex) Se bazeaz pe modurile de organizare clasice. Sunt utilizate n baze de date i n sisteme de fiiere. Tipuri (cteva): PARTIIONAREA nregistrrile din fiier sunt grupate n partiii sub un nume. n cadrul unei partiii nregistrrile sunt organizate secvenial. Se utilizeaz pentru bibliotecile de programe MULTIINDEXAREA Este o extindere a indexrii prin utilizarea mai multor chei alese de programator. Spaiul ocupat este mai mare. Se utilizeaz pentru fiiere care necesit regsiri intense multicriteriale. INVERS Presupune existena a dou fiiere: de baz i invers. Fiierul de baz conine datele propriu-zise i are organizare secvenial. El este fiierul n care se caut. Fiierul invers este construit din cel de baz (printr-o tehnic de inversare) i are organizare relativ. El este fiierul prin intermediul cruia se caut. Spaiul ocupat necesar este cam de 3,5 ori mai mare fa de ct ocup fiierul de baz. 4) Modul de acces reprezintmodul n care se determin locul ocupat de o nregistrare ntr-un fiier i depinde de modul de organizare. Tipuri de moduri de acces pentru fiiere: ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 6 SECVENIAL presupune c localizarea unei nregistrri se face prin parcurgerea tuturor nregistrrilor care o preced. Este permis accesul secvenial pentru toate tipurile de fiiere. Se recomand pentru fiierele din care sunt necesare, la o prelucrare, peste 50% din numrul total de nregistrri. Pentru optimizare se recomand ordonarea fiierului. DIRECT presupune c localizarea unei nregistrri se face cu ajutorul unei chei definite de programator. DINAMIC presupune c la o singur deschidere de fiier se pot localiza, alternativ i repetat, nregistrri n acces secvenial i direct. 1.4. Modele de structurare a datelor n BD oInformaia, care se reprezint n calculator n memoria intern sau extern, se poate defini structural dup schema: are ca obiectare ca proprietateare ca msur informaiaentitateaatributul valoarea oModelul de structur se refer la descrierea tuturor atributelor unei entiti n interdependen.oValorileatributelorsematerializeazprindate,caredauoreprezentaresimbolica informaiilor. oModeluldedateesteansambluldeconcepteiinstrumentenecesarpentruarealiza structura coleciilor de date (schema) (fig. 2.1.). Modelul de date este compus din: concepte; un formalism pentru a descrie datele (structura de date); un ansamblu de operatori pentru a le manipula (datele). CONCEPTESTRUCTURA DE DATE (formalism de descriere) DATELE (ansamblul de manipulat) Fig. 1.1. Modelul de date n literatura de specialitate [RICC01], [RAGE00] sunt prezentate trei tipuri de modele dedatepentrubazededate.Prezentm,pescurt,acestetipuri,mpreuncucteva caracteristici pentru fiecare: ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 7 modelul conceptual (la analiz) -descrie sistemul n termeni pe nelesul utilizatorului; -sefolosetepentruspecificaiainiialadateloripentrucomunicareacu utilizatorii; -este un mod de stabilire a unei legturi ntre dezvoltatori i utilizatori. modelul logic (la proiectare) -specific structura bazei de date (coleciile de date i legturile dintre ele); -se scrie ntr-o form care s poat fi folosit pentru crearea bazei de date; -sefolosetepentrudefinireaintreinereabazeidedatedectreSGBDi pentru formularea cerinelor de regsire de ctre utilizatori. modelul fizic (sarcina SGBD) -descrie modul n care modelul logic al datelor va fi reprezentat la stocare, n memoria extern (fiiere, indeci, discuri etc.); -de obicei, este generat automat, de ctre SGBD, pornind de la modelul logic. Schema [conceptual] reprezint descrierea fenomenelor din realitatea nconjurtoare prinentitiiatribute(tipurilededate),mpreuncutoatecorelaiile(legturile)dintreele (constrngerile). Definirea schemei este o activitate demodelare pentru c traduce n termeni abstraci entitile lumii reale. Schema BD se reprezint cu ajutorul unui model de date implementat prin intermediul unui SGBD adecvat. Trebuiessefacdistincieclarntrestructurabazeidedate(schema,deexemplu: stud(cod:N,4; nume:C,15) ) i coninutul ei (instana, de exemplu: 22 Nedelcu Anda). Schema iinstanelesuntstocatenbazadedate,ianumeprimandicionar,iarceade-adouan datele propriu-zise. nceleceurmeaznevomocupa,nceamaimareparte,demodelullogicdedate pentru baze de date. Elementele (componentele) oricrui model de date pentru baze de date sunt: 1.Definireastructurii modelului (partea structural): -definirea entitilor i a atributelor asociate; -definirea legturilor (asociarea) dintre entiti. Asocierea poate fi de tipul : -unu la unu (1:1) -unu la muli (1:M) -muli la muli (M:N) -neprecizat explicit DefinireastructuriidedatesefacecuunLDD(LimbajdeDescriereaDatelor)dintr-un SGBD. 2.Operatoriimodelului(parteademanipulare)careacioneazasuprastructurilordedate, dar i asupra datelor,pentru operaii de prelucrare (compunere, actualizare etc.). Operatorii se implementeaz cu ajutorul unui LMD (Limbaj de Manipulare a Datelor) dintr-un SGBD. 3.Reguliledeintegritate(parteadecoeren)suntrestriciistabiliteladescriereadatelor, care le asigur acestora meninerea corectitudinii i dau logica modelului. Restriciile se implementeaz cu un LDD din SGBD. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 8 Tipuri de modele logice de date pentru BD: fundamentale: ierarhice, reea, relaionale, orientate obiect; derivate (extinse din cele fundamentale): distribuite, multimedia etc. Prezentm,ncontinuare,principalelecaracteristicipentrumodelelededatefundamentare (de baz) pentru baze de date. I.Modelul ierarhic 1. Definirea structurii modelului ierarhic. a)Definireaentitilorsefaceprinnoiunedetipdenregistrare(clasdeentiti),care este format din caracteristici (cmpuri). Realizarea(instana)unuitipdenregistrareestedatdeansamblulvalorilorpentru cmpurile acesteia (nregistrarea). b)Definirealegturilordintreentitisefacefiziciconducelastructuradetipierarhic (arborescent) reprezenat sub forma unei diagrame (fig. 2.2.). nivel 0TIP_NREG 0 nivel 1TIP_NREG 11TIP_NREG 12TIP_NREG 13 nivel 2TIP_NREG 21 TIP_NREG 22 TIP_NREG 23 . . . Fig. 1.2. Diagrama de structur ierarhic Caracteristici ale structurii ierarhice (arborescente): Fiecarenodcorespundeunuitipdenregistrareifiecaredrumcorespundeunei legturi (asocieri). Orice acces la un nod se face prin vrful ierarhiei, numit rdcin, pe o singur cale. Un nod subordonat (copil) nu poate avea dect un singur superior (printe). Un superior poate avea unul sau mai muli subordonai. Legturacopil-printeestedoardetip1:1(laorealizarecopilcorespundeosingur realizare printe). Legtura printe-copil poate fi de tip 1:1 sau 1:M. nstructurexistunsingurnodrdciniunulsaumaimultenoduridependente situate pe unul sau mai multe niveluri. -ierarhie de tipuri de nregistrri se numete tip arbore. -realizare a unui tip arbore este format dintr-o singur realizare a tipului de nregistrarerdcinmpreuncuomulimeordonatformatdinunasau mai multe realizri ale fiecrui tip de nregistrare de pe nivelurile inferioare. Ordonarea realizrilor dintr-un arbore conduce la o secven ierarhic. 2. Operatorii modelului ierarhic LocalizareaunuiarborenBD:selocalizeazorealizareatipuluidenregistrare rdcin. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 9 Trecerea de la un arbore la altul n BD: se trece de la o realizare a tipului nregistrare rdcin (secven ierarhic) la o alt realizare a aceluiai tip nregistrare rdcin. Trecerea de la o realizare (nregistrare) la alta ntr-un arbore (secven ierarhic) : se poatefacetrecereapeacelainivelsaupeniveluridiferitentretipuridenregistrri legate ntre ele. Actualizareantr-unarbore:adugarea,modificareasautergereauneinregistrri. Operaiaestegreoaieiconsumatoarederesursecalculator(spaiuitimp)pentruc antreneazautomattoatenregistrriledinarborecaresenlnuiecunregistrarea actualizat. Not. Operatorii de mai sus sunt la nivel de nregistrare; acioneaz pe o nregistrare i produc tot o nregistrare. Exist i operatori la nivel de mulime de nregistrri care se implementeaz n LMD mult mai greu. 3. Restriciile de integritate ale modelului ierarhic. Realizarea subordonat este totdeauna asociat unei singure realizri superior. Dac un tip de nregistrare nu are realizri atunci nici tipurile nregistrri descendente nu au realizri. Not. Efectele restriciilor de integritate sunt: -complicarea operaiei de actualizare; -dacorealizareaunuinodsubordonattrebuiesfieasociatcumaimulterealizri ale nodului printe atunci ea trebuie multiplicat (crete redundana); -dau logica i corena modelului arborescent. Caracterizarea general a modelului ierarhic. 1.Modelul a fost propus de ctre IBM i a fost primul utilizat pentru BD. 2.Structura modelului este simpl (graf orientat) familiar specialitilor n informatic. 3.Implementarea modelului se face fizic i condiioneaz performanele BD: -prinpointeri,utiliznddiferitemetode(listesimplunlnuite,vectoride pointeri, chei primare etc.); -secvenial,fiecarerealizareaunuiarborecorespundeuneinregistrri(logice) dintr-un fiier secvenial. 4.Aplicabilitatea modelului se regsete cu succes n tehnologia construciilor de maini, dar i n alte domenii. 5.Limitele modelului ierarhic: -numruldeierarhiiposibilecretecombinatoriccunumrulnregistrrilor,n legtura printe-copil; -actualizarea datelor este groaie i consumatoare de resurse calculator; -nivelullogicnuesteseparatclardecelfizic(exemplu:indeciipotfistructuri logice dar i fizice); -nu se poate realiza legtura de tip M:N 6.Exemplu de SGBD ierarhic esteIMS (Information Management System) realizat de ctre IBM. 7.Baza de date ierarhic este o mulime ordonat de realizri ale unui tip arbore. II.Modelul reea 1.Definirea structurii modelului reea. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 10 a)Definireaentitilorsefaceprinnoiuneadetipdenregistrare,careesteformatdin caracteristici (cmpuri). Realizarea (instana) unui tip de nregistrare este dat de ansamblul valorilor pentru cmpurile acestuia (nregistrarea). b)Definirealegturilordintreentitisefacefiziciconducelaostructurdetipreea, reprezentat sub forma unei diagrame (fig. 2.3.) numit i schema (conceptual). TIP_NREG 1TIP_NREG 2 TIP_NREG 3TIP_NREG 4 TIP_NREG 5 TIP_NREG 6 . . . Fig. 1.3. Diagrama de structur reea Caracteristici ale structurii reea : -Un nod poate avea orici superiori i orici subordonai. -Pot exista mai multe tip de nregistrare rdcin. -La un subordonat se poate ajunge pe mai multe ci. -Este o extensie a structurii arborescente n care graful nu mai este limitat. -Legturile n model pot fi 1:1, 1:M, M:N, ciclice. -Pentruexprimarealegturilorsefoloseteconceptuldetipset.Untipseteste format dintr-un singur tip de nod proprietar i unul sau mai multe tipuri de noduri membre dependente de cel proprietar. -Realizarea tipului set este o colecie de nregistrri care are o realizare proprietar i un numr de realizri membre asociate. 2.Operatorii modelului reea. -Localizarea unui tip set: se identific o realizare a unui nod proprietar. -Trecereadelaonregistrarelaaltancadrulunuiset:proprietar-membru, membru-proprietar, membru-membru. -Actualizarea ntr-un set: adugarea, modificarea, tergerea unor membri. -Actualizarea ntr-o reea: adugarea, modificarea, tergerea unor seturi. Not.Operaiiledeactualizaresuntgreoaieimariconsumatoarederesurse calculator.Aceasta,deoarecesuntantrenatentotdeaunanregistrriledintr-unul sau mai multe seturi. -Localizarea unei nregistrri pe baza valorii unui cmp (cheie). 3.Restriciile de integritate ale modelului reea. -O nregistrare nu poate fi membr a dou realizri ale aceluiai tip set. nregistrarea se va multiplica. -O nregistrare poate s aparin mai multor tipuri set prin multiplicare. -Un tip de nregistrare poate fi nod proprietar ntr-un set i nod membru n alt set. -Un set poate avea un singur nod proprietar. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 11 Not. Efectele restriciilor de integritate sunt: -dau logica i coerena modelului reea; -complic operaia de actualizare; -introduce o redundan controlat. Caracterizarea general a modelului reea. 1.A fost propus de CODASYL ca soluie pentru a se elimina limitele modelului ierarhic. 2.Sepoateutilizapentrudomeniivariatedinlumeareal,deoarecepermitereprezentarea unor structuri complexe. 3.Implementarea modelului se face fizic i condiioneaz performanele BD: -prin pointeri structurai n liste nlnuite, de diferite tipuri (owner, prior, next); -prinhartdebii(matricecunregistrri,iarlainterseciesuntlegturile:1-da,0-nu). 4.Limitele modelului reea: -complexitatea modelului l face dificil de implementat; -legturile din model nu sunt ntotdeauna foarte clare; -prelucrarea nregistrrilor se face secvenial; -actualizarea este greoaie i consumatoare de resurse calculator; -reproiectarea este dificil datorit complexitii ridicate. 5.Exemple de SGBD reea : IDMS (Integrated Database Management System), Socrate. 6.Baza de date reea este o mulime oarecare de tipuri de nregistrri structurate pe tipuri set. III.Modelul relaional 1.Definirea structurii modelului relaional. a)Definireaentitilorsefacesubformaunortablouribidimensionalenumitetabelesau relaii de date. Conceptele utilizate sunt: domeniu este un ansamblu de valori caracterizat printr-un nume.el poate fi explicit (se enumeravalorileposibile,deexempluD1:{m,f})sauimplicit(seprecizeaza proprietatile valorilor, de exemplu D1:{a/aeN}). tabela/relaiaesteunsubansamblualprodusuluicartezianalmaimultordomenii, caracterizat printr-un nume. atributul este coloana unei tabele, caracterizata printr-un nume. tuplul este linia dintr-o tabel i nu are nume.Not. ordinea liniilor (tupluri) i coloanelor (atribute) dintr-o tabel nu trebuie s prezinte nici-o importan. schematabeleiestenumeletabelei,urmatintreparantezerotundedelistaatributelor, iar pentru fiecare atribut se precizeaza domeniul asociat. cheia este un atribut sau un ansamblu de atribute care au rolul de a identifica un tuplu dintr-o tabela. tipuri de chei: primare/alternate, simple/comune, externe. schema relaional este schema tabelei + cheile + restrictiile de integritate. Exemplu. Fie tabela STUDENT cu atributele: NUME din domeniul D1 (numele de persoane), ANSTUDIUdindomeniulD2(aniidestudiudintr-ofacultate),ANNATEREdindomeniul D3(anii calendaristici). ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 12 STUDENT Schema tabelei : STUDENT(NUME: D1, ANSTUDIU: D2, ANNATERE: D3). Not.Numruldedomeniiestemaimicsauegalcunumruldeatributepentruo tabel (mai multe atribute pot lua valori din acelai domeniu). b)Definirealegturilordintreentitisefacelogicconstruindasocierintretabelecu ajutorul unor atribute de legtur. Legturile se pot reprezenta sub forma unei diagrame de structur (fig. 2.4.) numit i schema BD. Exemplu.FieoBDprivinddesfacereancareamidentificattabelele:BENI,CONTR, PROD. Legturile dintre tabele sunt: un beneficiar poate ncheia mai multe contracte (1:M); un produs se poate livra prin mai multe contracte (1:M); unbeneficiarpoatecumpramaimulteproduseiunprodussepoatelivractremai muli beneficiari (M:N). BENI CODB DENB LOCB CTBC 1:M CONTRCODB CODPCANTL PRETL TERMENL

1:M PRODCODP DENP UMP Fig. 1.4. Schema BD Not. Legtura M:N nu apare direct n schem. Atributele subliniate sunt chei. Caracteristici ale structurii relaionale: Atributele implicate n realizarea legturilor se gsesc fie n tabelele asociate, fie n tabele distincte construite special pentru legturi. Atributuldintabelainiialsenumetecheieexterniarceldintabelafinalestecheie primar. Legturile posibile sunt 1:1, 1:M, M:N. Potenial, orice tabel se poate lega cu orice tabel, dup orice atribute. Legturilesestabilesclamomentuldescrieriidatelor(prinLDD)cuajutorulrestriciilor de integritate. Practic, se stabilesc i legturi dinamice la momentul execuiei. 1.Operatorii modelului relaional. a)Operatori din algebra relaional: NUME: D1ANSTUDIU : D2ANNATERE: D3 POPA A.21982 PETRE M.21982 ILIE C.31981 ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 13 standard:seleciaproiecia,jonciunea,reuniunea,diferena,produsulcartezian, intersecia, diviziunea; extensii : complementarea, descompunerea (splitarea) etc. Not.Operatoriialgebreirelaionaleacioneazlaniveldetabelnexpresiirelaionale. Operanzii sunt tabele iar rezultatul este ntotdeauna o tabel. b)Operatorii din calculul relaional: orientai pe tuplu: conectivele (conjuncia ., disjuncia v, negaia ( ), cuantificatorii (existenial -, universal ); orientai pe domeniu: idem ca mai sus. Not. Pentru operatorii calcului relaional operandul poate fi tuplu sau domeniu. 2.Restriciile de integritate ale modelului relaional. a)Structurale sunt cele carese definesc prin compararea unor valori din tabele: cheieunic:ntr-otabelnutrebuiesexistemaimultetupluricuaceeaivaloare pentru ansamblul cheie; referenial: ntr-o tabel T1 care refer o tabel T2, valorile cheii externe trebuie s figureze printre valorile cheii primare din T2 sau s ia valoarea NULL (neprecizat); entitii: ntr-o tabel, atributele din cheia primar nu trebuie s ia valoarea NULL. Not. Cele trei restricii de mai sus sunt minimale. Pe lng acestea, exist o serie de alte restricii structurale care se refer la dependenele dintre date:funcionale,multivaloare,jonciuneetc.(suntluatenconsiderarelatehnicilede proiectare BD relaionale). b)Semanticesuntcelecaresedefinescprincomportamentuldateloriincontdevalorile din BD: restricia de domeniu: domeniul corespunztor unui atribut dintr-o tabel trebuie s se ncadreze ntre anumite valori; restricii temporare: valorile anumitor atribute se compar cu nite valori temporare (rezultate din calcule etc.). Not.Restriciilesemanticefiindfoartegeneralesegestioneazfielamomentuldescrierii datelor(deexempluprinclauzaCHECK),fienafaramodeluluilamomentulexecuiei(de exemplu prin instruciunea IF) . Caracterizarea general a modelului relaional. 1.A fost propus de ctre IBM i a revoluionat reprezentarea datelor n BD fcnd trecerea la o nou generaie (a doua). 2.Modelulestesimplu,areosolidfundamentareteoreticfiindbazatpeteoriaseturilor (ansamblurilor) i pe logica matematic. 3.Potfireprezentatetoatetipuriledestructuridedatedemarecomplexitate,dindiferite domenii de activitate. 4.Implementarea modelului se face logic prin atribute avnd rol de chei. 5.Limitele modelului relaional: preamareasimplitateamodeluluilfacedificildeaplicatpentrunoiletipuride aplicaii (multimedia, internet etc.); nu asigur o independen logic total a datelor de aplicaie; pentru aplicaii de volum i complexitate foarte mari nu mai face fa; poate introduce o redundan prea mare (la proiectare prin tehnica de normalizare). 6.Baza de date relaional este un ansamblu de tabele prin care se reprezint att datele ct i legturile dintre ele. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 14 IV.Modelul orientat obiect 1.Definirea structurii modelului orientat obiect (OO). a)Definirea obiectelor se face cu ajutorul conceptului de clas de obiecte care este definit dinentitatearegsitnlumeareal.Sepuneaccentulattpedatectipecomportamentul acestora, ambele ncapsulate n obiect. Conceptele utilizate sunt: clasele(tipurile)deobiectesuntuntipabstractdedateprincaresedefinestestructura obiectelor (proprietatile) si comportamentul (metodele) acestora. obiectele reprezinta o colectie de proprietati care se refera la aceeasi entitate. obiectul are: un nume prin care este referit ; un identificator unic atribuit de sistem; implementare care este privat; interfa care este public. metodareprezintoperaiilepermiseasupraobiectului,decicomportamentul (funcionalitatea) acestuia. mesajul reprezint cereri adresate obiectelor pentru a returna o valoare sau o stare. caracteristici (principii) fundamentale (de baza) ale obiectelor: incapsurarea : descrierea obiectelor se face astfel incat nu se poate avea acces din afara obiectului la datele sale; polimorfismul : diferite obiecte pot rspunde diferit la aceleai mesaje; motenirea : capacitatea unui obiect de a-i deriva datele i funcionalitatea din alt obiect. instana unei clase reprezint realizarea unei clase, dat de valorile variabilelor aferente. b)Definirealegturilorntreobiecteserealizeazimplicitprinmoduldeconstruire (definire) al obiectelor. Tipurile de legturi n modelul OO sunt: ierarhice, caracterizate prin: -clasa de obiecte este structura de baz a modelului; -fiecare obiect are un identificator unic; -toate obiectele sunt membri ai unei clase; -clasele sunt structurate n ierarhii avnd caracteristica de motenire; -prin obiecte se pot defini orice tip de date (text, grafic, imagine, sunet, video etc.); -ansamblul claselor de obiecte structurate n ierarhii alctuiesc schema BD. de referin caracterizate prin: -se realizeaz pe baza identificatorului unic de obiect; -pot fi de urmtoarele feluri: simple de asociere : referirea unui obiect de ctre alt obiect; de compunere (tip parte-ntreg) : obiectele care reprezint componente ale unui ntreg sunt asociate cu obiectul ce reprezint ntregul; de agregare : obiectele independente sunt agregate succesiv pentru a forma un ntreg. -permitdefinireaimanipulareadeobiectecompusedinalteobiecte.Obiectele compuse rezultate au o structur ierarhic dar nu au caracteristic de motenire. 2.Operatorii modelului OO: ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 15 Labazaoperaiilordinmodelstaumesajelecaunicmoddeacomunicaobiectele ntre ele. Actualizarea metodelor : adaugare, modificare, tergere de metode. Actualizarea proprietilor : adaugare, modificare, tergere de date. Actualizarea claselor : adaugare, modificare, tergere de clase. Realizarea legturilor ntre clase : compunere, partiionare etc.. Actualizarea instanelor : prin metode care schimb starea intern a obiectului. 3.Restriciile de integritate ale modelului OO: Oriceobiecttrebuiesrespecterestriciileimpuseladefinireaclaseidincareface parte (protocol de obiect). Identificatorulobiectuluiasigurintegritatearefeririilael(seatribuieiseterge automat o dat cu obiectul). Accesul la obiecte este limitat la folosirea protocolului de mesaje definit pentru clasa din care face parte obiectul. Caracterizarea general amodelului OO. 1.ModelulOOmarcheaztrecerealaoatreiageneraiedeBD.Eladucebazelordedate un plus de deschidere, independena logic a datelor de aplicaii, reutilizarea obiectelor etc. 2.ModelulOOdbunerezultatepentruproblemefoartemariicomplexe(principiile complexitii sunt incluse n model). 3.nstructursuntacceptatetoatetipurilededatecunoscute,decisepoateaplicapentru toate domeniile de activitate. 4.Limitele modelului OO: nuexistunmodelOOunanimacceptatdespecialiti.Existtotuiorganisme internaionaledestandardizareexempluOMG(ObjectManagementGroup) precumimodeleOOstandardizateexempluODMG(ObjectData Management Group); imaturitatea i naturaleea dezarmant a tehnologiei OO; elementencinsuficienttestatepentruSBDOO:controlulintegritii,volume foarte mari, regsirea etc. 5.Exemple de SGBDOO: O2 (Frana), Jasmine (SUA) etc. 6.Baza de date orientat obiect este o mulime de clase de obiecte persistente (n memoria extern), organizat coerent i ordonat n ierarhii, partajat pentru utilizatorii concureni. Note 1) O comparaie ntre modelul relaional i orientat obiect vezi n Anexa 1. 2)Dupprezentareadepnacumaprimelordoucapitole,putemdaodefiniie completiexplicativanoiuniidebazdedate,cafiindunansambludecoleciide date: -organizat,penivelurideorganizareadatelor(conceptual,logic,fizic),aacum reiese din arhitectura unui SBD pe niveluri; -coerent , conformrestriciilor de integritate i a legturilor dintre date, care rezult din modelul logic de date aferent; -structurat , conform unui model de date pentru baze de date (unul fundamental sau derivat); -cuoredundanminimicontrolat,careesteasiguratprinmodeluldedate implementat i prin tehnicile de proiectare ale BD; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 16 -accesibilmaimultorutilizatorintimputil,adicmaimuliutilizatori, concomitent, pot obine informaiile dorite atunci cnd are nevoie de ele. 1.5.Protecia BD oActivitatea de protecie a bazelor de date este deosebit de important att pentru modul de lucru pe calculatoare independente ct i pentru modul de lucru n reea de calculatoare. oAsigurarea proteciei pentru o baz de date revine att n sarcina SGBD, prin funcia de administrare (tot mai mult), ct i n sarcina administratorului bazei de date. oProtecia bazei de date este un ansamblu de msuri necesare asigurrii securitii i integritii datelor. n cele ce urmeaz, vom prezenta o sintez a pricipalelor aspectelor care apar pentru a se asigura protecia bazelor de date. Lucruri suplimentare vor fi prezentate n capitolele aferente SGBD-ului Oracle, iar exemplificarea se poate gsi, pe larg,n referina bibliografic [VELU02]. Securitatea datelor semnific interzicerea accesului la date pentru utilizatorii neautorizai. Integritatea datelor nseamn corectitudinea datelor ncrcate, precum i manipularea lor astfel nct s se respecte restriciile de integritate ale modelului de date implementat. n continuare, vom prezenta, pe scurt, cele dou aspecte care compun activitatea de protecie a unei baze de date. La fiecare aspect vom sintetiza activitile aferente. INTEGRITATEA datelor. 1.Integritatea semanticconst nprevenirea introducerii unor date incorecte n BD i n prevenirearealizrii unor prelucrri eronate. Acest lucru se asigur prin respectarea restriciilor de integritate. Acestea pot fi implicite (asigurate automat de SGBD) i explicite (asigurate prin proceduri incluse n programele de aplicaie). 2.Controlul concurenei la date const n garantarea coerenei (corectitudinii) i simultaneitii datelor n cazul prelucrrii tranzaciilor (unitatea logic de prelucrare) prin tehnici specifice (blocarea, interblocarea etc.). 3.Salvarea i restaurarea. Salvarea este operaia de stocare a datelor n copii de siguran prin tehnici specifice (copiere, jurnalizare etc.). Ea se poate face automat de ctre SGBD(cel mai des) sau manual de ctre administratorul BD. Restaurarea este operaia derefacere a consistenei BD, pornind de la datele salvate, minimiznd prelucrrile pierdute. Restaurarea se poate face automat de ctre SGBD (cel mai des) sau manual de ctre administratorul BD. SECURITATEA datelor. 1.Autorizarea i controlul accesului la date const nidentificarea utilizatorilor i restricionarea accesului acestora, pentru diferite operaii de prelucrare. 2.Viziunile (views) sunt partiii logice ale BD definite pentru diferii utilizatori. 3.Procedurile speciale suntrutine, oferite de SGBD, care efectueaz anumite operaii asupra datelor i care sunt accesibile anumitori utilizatori. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 17 4.Criptarea este operaia de codificare a datelor n vederea stocrii sau transmiterii datelor. n acest sena, se folosesc o mulime de tehnici specifice: parole, algoritmi de criptare/decriptare, rutine speciale etc. 1.6. Rezumat Dup ce s-a definit noiunea de organizare a datelor, s-a prezentat evoluia acesteia, porninddelafiiere(primulmoddeorganizareadatelornmemoriaextern)i ajungndu-selaultimeletipuridebazededate,celeorientateobiect.Inaceast evoluie,s-auurmritctevaaspecte(caracteristici)comparative:structuradedate, modul de prelucrare a datelor, redundana datelor, software-ul utilizat. Pentruasefundamentanecesitateaorganizriidatelornmemoriaextern, comparativ cu memoria intern, s-a prezentat un tabel n care se gsesc cinci criterii: cost, vitez, capacitate, persisten, organizare. ncontinuare,sedefinetenoiuneadefiieri,acesteia,i seprezintctevadintre celemaiimportanteaspectedeorganizareadatelor:operaii,structura,modulde organizare, modul de acces. Oparteconsistentdincapitolestedestinatorganizriidatelornbazededate conform unor modele de date.Maintisuntprezentateprincipalelnoiuninecesare:informaia,modelulde structur, modelul de date, tipuri de modele de date, schema conceptual, elementele componente ale unui model logic de date (definirea structurii, operatorii, regulile de integritate). Dup aceea sunt prezentate cele patru modele logice de date fundamentale (de baz), ntlnitelaorganizareadatelornbazededate:ierarhic,reea,relaional,orientat obiect.Fiecaremodelesteprezentatnacelaimod:elementelecomponente, caracterizaregeneral.nacestfelsepoturmri,comparativ,cumseregsesc noiunile prezentate la nceputul capitolului, n fiecare model n parte. Capitolulsencheiecuosintezprivindproteciabazelordedate.Suntluaten considerareceledouaspectealeproteciei:securitatea,integritatea.Fiecaredintre acestea este descompus n principalele subactiviti care trebuie s fie asigurate ntr-un sistem de baz de date, de ctre SGBD i administratorul bazei de date. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 18 1.7. Teste de autoevaluare 4.n modelul relaional pentru baze de date: a)exist noiunea de tip nregistrare b)atributele care au rol n realizarea legturilor ntre tabele se numesc chei compuse c)legturile ntre tabele se descriu n LMD d)exist noiunea de schema tabelei e)proiecia, negaia i existena sunt operatori din algebra relaional 5.Dup modelul de date implementat, bazele de date sunt: a)ierarhice, locale b)distribuite, generalizate c)relaionale, de conducere d)orientate obiect, specializate e)reea, de documentare 6.La organizarea datelor n memoria extern , noiuni corespunztoare sunt: a)cmp valoare b)caracteristic cmp c)caracteristic nregistrare d)cmp nregistrare e)colecia de date fiier 7.n modelul ierarhic pentru baze de date: a)definirea obiectelor se face prin clase de obiecte b)se admit legturi 1:1, 1:M, M:N c)exist secvene ierarhice de realizri d)exist operatorul de actualizare ntr-un arbore e)o realizare copil este ntotdeauna asociat unei singure realizri printe 8.n modelul orientat obiect pentru baze de date: a)obiectul are identificator, proprieti b)obiectul are interfa, implementare c)exist caracteristicile fundamentale ale obiectelor: succesiunea i ncapsularea d)exist restricia de integritate: orice clas respect regulile impuse obiectului din care face parte e)la baza operaiilor (operatorilor) stau metodele 9.La evoluia organizrii datelor n memoria extern se au n vedere aspectele: a)modul de organizare a datelor b)nivelurile de structurare a datelor c)modul de prelucrare a datelor d)redundana programelor e)aplicaiile software aferente ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 19 1.8. Rspunsuri i comentarii la testele de autoevaluare 1.9. Bibliografia unitii de nvare 1 [RAGE00]R.Ramakrishnan, J.Gehrke Database Management Systems, ed.Mc Graw Hill, 2000 [RICC01]G.RiccardoPrinciplesofDatabaseSystems-withInternet and Java Applications, ed.Addison Wesley, 2001 [VELU00]M.Velicanu,I.Lungu.a.Sistemedegestiuneabazelorde date, ed.Petrion, 2000 [VELU02]M.Velicanu,I.Lungu,M.Muntean,M.Iorga,S.Ionescu Oracle platform pentru baze de date, ed. Petrion, 2002 [LUBO95]I.Lungu,C.Bodea.a.-Bazededateorganizare, proiectare i implementare , ed. ALL, 1995 [CONN00]T.Connolly Database Systems, ed.Mc Graw Hill, 2000 1. d; 2. -; 3. b, e; 4. c, d, e; 5. a, b, c; 6. a, b, c, e. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 20 Unitatea de nvare 2:BAZE DE DATE NOIUNI FUNDAMENTALE Cuprins 2.1. Obiective 2.2. Baza de date concepte 2.3. Administrarea bazelor de date 2.4. Rezumat 2.5. Teste de autoevaluare 2.6. Rspunsuri i comentarii la testele de autoevaluare 2.7. Bibliografia unitii de nvare 2 2.1. Obiective Dup studiul acestei uniti de nvare vei avea cunotinte despre: Durata medie a unei uniti de studiu individual 2 ore generaii de baze de date; noiunidebaz:domeniuldevalori,caracteristica,familiade caracteristici, colecia de date, baza de date; definiiabazei de date, vzut caun ansamblu de daten memoria externcu urmtoarele caracteristici: organizat, pe trei niveluri (conceptual, logic, fizic);structurat,conformunuimodeldedate;coerent,prinrestriciilede integritate i protecia datelor; cu o redundan minim i controlat, prin implementareaunuimodeldedateiprinaplicareauneitehnicide proiectare; accesibil mai multor utilizatori n timp util; activitateadeadministrareauneibazededate,punctndu-sesarcinile administratoruluiBD,precumiinstrumentelenecesarepentruafila dispoziia acestuia pentru a ndeplini aceste sarcini. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 21 2.2. Baza de date concepte 1.Evoluie 2.Elementele componente ale unei baze de date 3.Conceptul de baz de date Evoluie ntr-uncalculatordatelesuntstocateattnmemoriaintern(temporar)ctinmemoria extern (persistent). n memoria extern, evoluia modului de memorare a datelor a fost determinat de urmtoarele aspecte: accesul ct mai rapid i uor la date; stocarea unui volum ct mai mare de date; creterea compexitii datelor; perfecionarea echipamentelor de culegere, stocare, transmitere i prelucrare a datelor. Bazele de date, ca mod de organizare a datelor n memoria extern, au evoluat din fiiere printr-unprocesdeintegrarealor(fiiereleilegturiledintreele)iinndcontdecerinele aplicaiilor informatice. Sunt numeroase aspecte care privete trecerea de la fiiere la baze de date (vezi Anexa A2) dar celmaiimportantestemodeluldestructurareadatelornmemoriaextern(vezicapitolul2) care difer pentru cele dou noiuni. De la apariia lor i pn astzi, bazele de date au parcurs urmtoarele generaii (determinate n principal de modelul de date implementat): generaia I: BD arborescente i reea (pn la sfritul anilor 70); generaia a-II-a: BD relaionale (sfritul anilor 70 i pn acum); generaia a-III-a: BD orientate obiect (sfritul anilor 80 i pn acum). Elementele componente ale unei baze de date Amartatfaptulcbazelededateauevoluatdinfiiere(veziicapitolul2).Acestlucruse regseteinnoiunileutilizatenceledoumodurideorganizareadatelornmemoria extern, aa cum reiese din tabelul urmtor. De remarcat faptul c att fiierele ct i bazele de date se construiesc pornind de la lumea real nconjurtoare. Citirea tabelului se va face de la stnga la dreapta, iar noiunile corespunztoare de pe cele dou rnduri pot fi considerate similare.Astfelvomspune:obazdedateesteformatdinmaimultecoleciidedate.Fiecaredintre acestea are ataat o familie de caracteristici, care este format din mai multe caracteristici, care iau valori dintr-un domeniu de valori. nmodsimilarseciteternduldejos:unsistemdefiiereesteformatdinmaimultefiiere. Fiecare dintre acestea are ataat o nregistrare, care este format din mai multe cmpuri, care iau valori. Baza de dateColecii de dateFamiliede caracteristici CaracteristiciDomeniide valori Sistem de fiiereFiierenregistrareCmpuriValori Ne vom ocupa, n continuare, de noiunile aferente bazelor de date, urmnd ca de fiiere s ne ocupm n capitolul urmtor. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 22 Domeniuldevaloriestedatdemulimeavalorilorposibilepentruocaracteristic(exemplu: culorile posibile pentru un automobil). Caracteristica semnificdefinirea i descrierea unui anumit aspect (proprieti) dintr-o entitate a lumii reale (exemplu: marca auto) Familiadecaracteristiciesteansamblulcaracteristicilorcaresereferlaaceeaientitatedin lumeareal(exemplu:mulimeacaracteristicilorprincaresepoatedescrieunautomobil {NUMR, MARCA, CAPACITATE_CILINDRIC, CULOARE}). Coleciadedate(entitatea)esteofamiliedecaracteristiciasupracreiaseaplicunpredicat (care conduce la o relaie de ordine ntre caracteristici i la obinerea informaiilor cu un anumit scop) cruia i se afecteaz anumite legturi. Conceptul de baz de date Definireanoiuniidebazdedateoputemfacedinmaimultepunctedevedere.Astfelvom avea,mainti,nvederecomponentelesaleiapoivominecontdeorganizareadatelorn memoria extern. Bazadedateesteunansambludecoleciidedateaflateninterdependen,mpreuncu descrierea datelor i a legturilor dintre ele. Bazadedateesteunansambludedatenmemoriaexterncuurmtoarelecaracteristici:-organizat, pe trei niveluri (conceptual, logic, fizic); structurat, conform unui model de date; coerent, prin restriciile de integritate i protecia datelor; cuoredundanminimicontrolat,prinimplementareaunuimodeldedateiprin aplicarea unei tehnici de proiectare; accesibil mai multor utilizatori n timp util. 2.3. Administrarea bazelor de date oAdministratorulBDesteformatdinunasaumaimultepersoane cu experien n analiz i proiectare, care se ocup de organizarea i ntreinerea BD. Nivelurilede administratori de baze de date, dup activitile desfurate, sunt: -administrator global realizeaz: schema (conceptual) a BD, pornind de lacerinele aplcaiei; organizarea datelor la nivel logic (colaboreaz). -administrator de aplicaie realizeaz: schema extern (logic) pentru o aplicaie, pornind de la cerinele de prelucrare ale plicaiei; organizarea datelor la nivel fizic (colaborare). -administratorul bazei de date realizeaz: schema intern (fizic) a datelor; reorganizarea bazei de date; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 23 gestioneaz funcionarea BD. Sarcinile administratorului BD sunt structurate dup activitile de realizare a unei BD: -la analiza i proiectarea BD: definete obiectivele BD; colaboreaz la formularea cerinelor aplicaiei; definete dicionarul BD(schema, restriciile de integritate etc.); colaboreaz la schema extern i la cea intern; concepe protecia datelor. -la implementarea BD: elaboreaz documentaie; definete regulile de implementare i dare n folosin a BD; asigur ncrcarea BD din diferite surse de date. -la exploatarea BD: monitorizeaz accesul la date; asigur protecia datelor; ntreine funcionarea BD la parametrii proiectai. Instrumente la dispoziia administratorului BD pentru a-i ndeplini sarcinile: -instrumenteleoferitedeSGBDpentru:reorganizareaBD,refacereaBD,analizestatistice, gestionarea dicionarului de date, protecia datelor. -instrumente specifice create de administratori i programatori. Not. Un exemplu de administrare a unei baze de date relaionale se gsete n[VELU02], cu exemplificarepesistemulOracle.Caoconcluzie,sepoatespunecnacestmoment, activitatea deadministrare a unei baze de date afost mult automatizat. Acest lucru nseamn cmultedintresarciniledeadministrareaufostpreluatedeSGBD,degrevndu-lpe administrator. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 24 2.4. Rezumat 2.5. Teste de autoevaluare 1.Baza de date este un ansamblu de date: a)organizat, structurat b)cu o redundan minim i necontrolat c)accesibil mai multor utilizatori n timp util d)coerent, modular e)distribuit uniform 2.Pentru o baz de date: a)structura conceptual se deduce din cea logic b)structura extern se deduce din cea conceptual c)structura global se deduce din cea conceptual d)structura global se deduce din cea fizic e)structura intern se deduce din cea fizic 3.Concepte specifice unei baze de date sunt: a)colecia de proprieti b)colecia de date c)familia de caracteristici d)familia de nregistrri e)caracteristica Cunoaterea concepteleor ntr-un domeniu de activitate este de mare importan pentru profesioniti. Acest lucru este valabil i pentru cei care doresc s lucreze cu baze de date. Conceptele aferente acestui domeniu au fost create de cercettori, n mare parte, nc de la apariia primei generaii de baze de date, inndu-se cont de evoluia din fiiere, ca mod de organizare a datelor n memoria extern.Principalele concepte prezentate sunt: generaii de baze de date, domeniul de valori, caracteristica, familia de caracteristici, colecia de date, baza de date. Baza de date este un ansamblu de date n memoria externcu urmtoarele caracteristici: -organizat, pe trei niveluri (conceptual, logic, fizic); -structurat, conform unui model de date; -coerent, prin restriciile de integritate i protecia datelor; -cu o redundan minim i controlat, prin implementarea unui model de date i prin aplicarea unei tehnici de proiectare; -accesibil mai multor utilizatori n timp util. Pe scurt, este prezentat activitatea de administrare a unei baze de date, punctndu-se: ceesteunadministrator,caresuntniveluriledeadministartori,caresuntsarcinile administratoruluiBD,precumiinstrumentelenecesareafiladispoziiasapentrua ndeplini aceste sarcini. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 25 2.6. Rspunsuri i comentarii la testele de autoevaluare 2.7. Bibliografia unitii de nvare 2 [LUBO95]I. Lungu, C. Bodea . a. - Baze de date organizare, proiectare i implementare , ed. ALL, 1995 [VELU02]M.Velicanu,I.Lungu,M.Muntean,M.Iorga,S.Ionescu Oracle platform pentru baze de date, ed. Petrion, 2002 1. a, c; 2. b; 3. b, c, e; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 26 Unitatea de nvare 3:BAZE DE DATE RELAIONALE (BDR) Cuprins 3.1. Obiective 3.2. Conceptul de BDR 3.3. Optimizarea BDR prin tehnica normalizrii 3.4. Algebra relaional i calculul relaional 3.5. Rezumat 3.6. Teste de autoevaluare 3.7. Rspunsuri i comentarii la testele de autoevaluare 3.8. Bibliografia unitii de nvare 3 3.1. Obiective Dup studiul acestei uniti de nvare vei avea cunotine despre: Durata medie a unei uniti de studiu individual 8 ore bazele de date relaionale (BDR); realizarea unei aplicaii cu BDR, ceea ce presupune obligatoriu proiectarea bazei de date; diferitetehnicideproiectareaBDR,dintrecareceamaiutilizateste normalizarea; celecinciformenormale(FN1laFN5)careseconstruiescnprocesulde proiectare a unei BDR; doudomeniiimportantedinteoriarelaional:calcululrelaionali algebrarelaional,mpreuncuceimaiimportanioperatoriafereni acestora. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 27 3.2. Conceptul de baze de date relaionale (BDR) oBazele de date relaionale (BDR) utilizeaz modelul de date relaional i noiunile aferente. oBDR au o solid fundamentare teoretic, n special prin cercetrile de la IBM conduse de E.F.Codd. oBDR este un ansamblu organizat de tabele (relaii) mpreun cu legturile dintre ele. Cteva dintre avantajele BDR fa de fiiere: CRITERIUBDRFIIERE Independena datelorlogic i fizicfizic Niveluri de structurareconceptual, logic i fiziclogic i fizic Deschidere i portabilitate maremic reprezentareaiutilizarea datelor simplificat prin modelcomplicat structura de date se pstreazn dicionarul BDn programe. Concepte utilizate la organizarea datelor n memoria extern n BDR i respectiv fiiere: fiiere fiier nregistrarecmp valori Organizare date n BDR tabeltuplu atribut domeniu valori (relaie) (linie)(coloan) Condiii minimale pentru ca un SGBD s fie relaional: s implementeze modelul de date relaionale prin LDD i LMD; s implementeze cel puin un limbaj relaional. Not.CondiiilecompletecaunSGBDsfierelaionalsuntdatedecele13regulialelui CODD. 3.3. Proiectarea BDR prin tehnica normalizrii oAspecte generale privind proiectarea BD oNoiuni privind normalizarea oFormele normale a)Aspecte generale privind proiectarea BD Proiectarea unei BD este un proces n care se utilizeaz diferite modele, tehnici i instrumente pentru a transpune un domeniu din lumea real nconjurtoare, n termenii organizrii datelor aferente, pe calculator. Pornind de la lumea real se identific i specific cerinele aplicaiei (domeniul de interes) prin: documentare, interviu, terminologie, comunicare etc. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 28 Rezultatul acestei activiti este obinerea elementelor necesare pentru organizarea informaiei din domeniul respectiv. Acest lucru se realizeaz [RICC01] cu ajutorul unor concepte i instrumente adecvate: -Schemele BD: Schema conceptual specific structura organizaional i coninutul informaional al sistemului i reprezint un mod de comunicare ntre proiectanii i utilizatorii BD; Schema logic definete informaia ntr-o manier care poate fi folosit pentru crearea BD. Schema extern organizeaz informaia ntr-o ordine care permite accesul utilizatorilor la BD (construcia viziunilor). Not.Cele dou scheme pot fi separate sau integrate ntr-una singur deoarece ambele se materializeaz prin instruciuni (nivelul logic) dintr-un limbaj din SGBD, destinate unor utilizatori (extern). Schema fizic specific reprezentarea informaiei n calculator n termeni fizici (cum este stocat informaia n memoria extern, pe suportul tehnic de informaie). -Obiectele din lumea real se reprezint prin entiti care au caracteristici (atribute). -Obiectele din lumea real au asocieri (legturi) de diferite tipuri cu alte obiecte, fiecare avnd un anumit rol n aceste legturi. b)Noiuni privind normalizareaAspectul dinamic al structurii de date este avut n vedere i rezolvat de BDR. Acest lucru nseamn c modelul de date relaional permite schimbarea n timp a structurii de date fr schimbarea programelor de aplicaie (independena logic). Tehnica de normalizare este utilizat n activitatea de proiectare a structurii BDR i const n eliminarea unor anomalii (neajunsuri) de actualizare din structur. Anomaliile de actualizare sunt situaii nedorite care pot fi generate de anumite tabele n procesul proiectrii lor: anomalia de tergere semnific faptul cstergnd un tuplu dintr-o tabel, pe lng informaiile care trebuie terse, se pierd i informaiile utile existente n tuplul respectiv; anomaliile de adugare semnific faptul c nu pot fi incluse noi informaii necesare ntr-o tabel, deoarece nu se cunosc i alte informaii utile (de exemplu valorile pentru cheie); anomalia de modificare semnific faptul c este dificil de modificat o valoare a unui atribut atunci cnd ea apare n mai multe tupluri. Not. Anomaliile de actualizare sunt rezolvate de ctre teoria relaional, lucru care nu se ntmpl la alte tipuri de BD. Normalizarea este oteorie construit n jurul conceptului de forme normale (FN), care amelioreaz structura BD prin nlturarea treptat a unor neajunsuri i prin imprimarea unor faciliti sporite privind manipularea datelor. Not. Teoria normalizrii a fost conceput iniial de ctre E.F.Codd, ulterior aducndu-i contribuia i ali cercettori. Normalizarea utilizeaz ca metod descompunerea (top-down) unei tabele n dou sau mai multe tabele, pstrnd informaii (atribute) de legtur. c)Formele normale O tabel (relaie) este ntr-o form normal (FN) dac satisface anumite restricii, care arat c FN(i+1) este preferat fa de FN(i), i=1,4. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 29 Sunt cinci forme normale (FN1 la FN5) i una suplimentar (BCNF) care revizuiete FN3. O baz de date este n FNi , i=1,5 dac toate tabelele sale sunt n FNi. BD iniial va fi format dintr-o singur colecie de date, care apoi se descompune n mai multe tabele, parcurgnd formele normale. FN1 O tabel este n FN1 dac toate atributele ei conin valori elementare (nedecompozabile), adic fiecare tuplunu trebuie s aib date la nivel de grup sau repetitiv. Structurile de tip arborescent i reea se transform n tabele cu atribute elemntare. O tabel n FN1 prezint nc o serie de anomalii de actualizare datorit eventualelor dependene funcionale incomplete. Fiecare structur repetitiv genereaz (prin descompunere) o nou tabel, iar atributele la nivel de grup se nltur, rmnnd doar cele elemntare. FN2 O tabel este n FN2 dac i numai dac este n FN1 i fiecare atribut noncheie al tabelei este dependent funcional complet de cheie. Un atribut B al unei tabele depinde funcional de atributul A al aceleiai tabele, dac fiecrei valori a lui A i corespunde o singur valoare a lui B, care i este asociat n tabel. Un atribut B este dependent funcional complet de un ansamblu de atribute A n cadrul aceleiai tabele, dac B este dependent funcional de ntreg ansamblul A (nu numai de un atribut din ansamblu). O tabel n FN2 prezint nc o serie de anomalii de actualizare, datorit eventualelor dependene tranzitive. Eliminarea dependenelor incomplete se face prin descompunerea tabelei iniiale n dou tabele, ambele coninnd atributul intermediar (B). FN3 O tabel este n FN3 dac i numai dac este n FN2 i fiecare atribut noncheie depinde n mod netranzitiv de cheia tabelei. ntr-o tabel T, fie A,B,C trei atribute cu A cheie. Dac B depinde de A (AB) i C depinde de B (BC) atunci C depinde de A n mod tranzitiv. Eliminarea dependenelor tranzitive se face prin descompunerea tabelei iniiale n dou tabele, ambele coninnd atributul intermediar (B). O tabel n FN3 prezint nc o serie de anomalii de actualizare, datorate eventualelor dependene multivaloare. Not. O definiie mai riguruas pentru FN3 a fost dat prin forma intermediar BCNF (Boyce Codd Normal Form): o tabel este n BCNF dac fiecare determinant este un candidat cheie.Determinantul este un atribut elementar sau compus fa de care alte atribute sunt complet dependente funcional. FN4 O tabel este n FN4 dac i numai dac este n FN3 i nu conine dou sau mai multe dependene multivaloare. ntr-o tabel T, fie A,B,C trei atribute. n tabela T se menine dependena multivaloare A dac i numai dac mulimea valorilor lui B ce corespunde unei perechi de date (A,C), depinde numai de o valoare a lui A i este independent de valorile lui C. FN5 ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 30 O tabel este n FN5 dac i numai dac este n FN4 i fiecare dependen jonciune este generat printr-un candidat cheie al tabelei. n tabela T (A,B,C) se menine dependena jonciune (AB, AC) dac i numai dac T menine dependena multivaloare A B sau C. Not. Dependena multivaloare este caz particular al dependenei jonciune. Dependena funcional este caz particular al dependenei multivaloare. 3.4. Algebra relaional i calculul relaional oPentru manipularea datelor conform modelului relaional se folosesc operatorii din algebra i calculul relaional [RICC01].oPentru implementarea acestor operatori exist comenzi specifice n LMD din SGBDR. Aceste comenzi sunt utilizate n operaii de regsire (interogare). Dup tehnica folosit la manipulare, LMD sunt bazate pe: calculul relaional (QUEL n Ingres, ALPHA propus de Codd); algebra relaional (ISBL, RDMS); transformarea (SQL, SQUARE); grafic (QBE, QBF). Calculul relaional Calculul relaional se bazeaz pe calculul predicatelor de ordinul nti (domeniu al logicii) i a fost propus de E.F.Codd. Predicatul este o relaie care se stabilete ntre anumite elemente i care poate fi confirmat sau nu. Predicatul de ordinul 1 este o relaie care are drept argumente variabile care nu sunt predicate. Variabila poate fi de tip tuplu (valorile sunt dintr-un tuplu al unei tabele) sau domeniu (valorile sunt dintr-un domeniu al unei tabele). Cuantificatorii (operatorii) utilizai n calculul relaional sunt: universal () i existenial (-). Construcia de baz n calculul relaional este expresia relaional de calcul tuplu sau domeniu (funcie de tipul variabilei utilizate). Expresia relaional de calcul este format din: operaia de efectuat; variabile (tuplu respectiv domeniu); condiii (de comparaie, de existen); formulebinedefinite(operanzi-constante,variabile,funcii,predicate; operatori); cuantificatori. Not.ExempludeimplementareacalcululuirelaionalnlimbajulQUELvezincartea [VELU00]. Algebra relaional Algebra relaional este o colecie de operaii formale aplicate asupra tabelelor (relaiilor), i ea a fost conceput de E.F.Codd. Operaiile sunt aplicate n expresiile algebrice relaionale care sunt cereri de regsire. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 31 Acestea sunt compuse din operatorii relaionali i operanzi. Operanzii sunt ntotdeauna tabele (una sau mai multe). Rezultatul evalurii unei expresii relaionale este format dintr-o singur tabel. Algebrarelaionalarecelpuinputereaderegsireacalculuirelaional.Oexpresiedin calculul relaional se poate transforma ntr-una echivalent din algebra relaional i invers. Operatoriidinalgebrarelaionalpotfigrupaindoucategorii(R1,R2,R3suntrelaii (tabele)): 1.Operatori pe mulimi REUNIUNEA: R3 = R1R2, unde R3 va conine tupluri din R1 sau R2 luate o singur dat. DIFERENA: R3 = R1 \ R2, unde R3 va conine tupluri din R1 care nu se regsesc n R2 PRODUSUL CARTEZIAN: R3 = R1 R2, unde R3 va conine tupluri construite din perechi (x1x2), cu x1eR1 i x2eR2. INTERSECIA:R3 = R1 R2, unde R3 va conine tupluri care se gsesc n R1 i R2 n acelai timp. 2.Operatori relaionali speciali SELECIA:dinR1seobineosubtabelR2,carevaconineosubmulimedintuplurile iniiale din R1 ce satisfac un predicat (o condiie). Numrul de atribute din R2 = numrul de atribute din R1 Numrul de tupluri din R2 < numrul de tupluri din R1. PROIECIA:dinR1seobineosubtabelR2,carevaconineosubmulimedinatributele iniiale din R1 i fr tupluri duplicate Numrul de atribute din R2 < numrul de atribute din R1 Numrul de tupluri din R2 s numrul de tupluri din R1. JONCIUNEA: derivaie a produsului cartezian, ce presupune utilizarea unui calificator care s permit compararea valorilor unor atribute din R1 i R2, iar rezultatul n R3. R1 i R2 trebuie s aib unul sau mai multe atribute comune care au valori comune. Note. 1)Coddaintrodusaseoperatoridebaz(reuniunea,diferena,produsul cartezian,selecia,proiecia,jonciunea)idoioperatoriderivai (intersecia i diviziunea). 2)Ulterior au fost introdui i ali operatori derivai (speciali). 3)Algebrarelaionalesteprindefiniieneprocedural(descriptiv),iar calcululrelaionalpermiteomanierdecutaremixt (procedural/neprocedural). Transformarea Ofer o putere de regsire echivalent cu cea din calculul i algebra relaional. Sebazeazpetransformarea(mapping)unuiatributsaugrupdeatributentr-unatributdorit prin intermediul unor relaii. Rezultatul este o relaie (tabel) care se poate utiliza ntr-o alt transformare. Grafica Ofer interactivitate mare pentru constrirea cererilor de regsire. Utilizatorul specific cerea alegnd sau completnd un ecran structurat grafic. Poate fi folosit de ctre toate categoriile de utilizatori n informatic. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 32 3.5. Rezumat implementare. 3.6. Teste de autoevaluare Se definete noiunea de baz de date relaional (BDR) innd cont de modelul de date relaional. Se face o comparaie a noiunilor utilizate n BDR cu cele utlizate la lucrul cu fiiere. Realizarea unei aplicaii cu BDR este o activitate complex, carepresupune obligatoriu proiectarea bazei de date. n acest sens se folosesc diferite tehnici, dintre care cea mai utilizat este normalizarea. Scopul tehnicii de normalizare este de a elimina, n procesul de proiectare, anomaliile de actualizare. Sunt prezentate cele cinci forme normale (FN1 la FN5) care se construiesc n procesul de proiectare a unei BDR. n continuare, se prezint un exemplu practic de proiectare a unei BDR prin tehnica de normalizare, ajungndu-se la o schem conceptual. Sunt exemplificate doar primele trei forme normale, deoarece acestea sunt cele mai utilizate n aplicaiile practice. n finalul capitolului se prezint o sintez a dou domenii importante din teoria relaional: calculul relaional i algebra relaional. Fiecare dintre cele dou domenii este definit pe scurt, iar apoi sunt prezentai cei mai importani operatori afereni. Sunt citate exemple de limbaje relaionale clasificate dup tehnica folosit la implementare. 1.O tabel este n FN3 dac: a)este n FN2 i fiecare atribut noncheie depinde n mod netranzitiv de cheia tabelei b)este n FN1 i fiecare atribut cheie depinde tranzitiv de atributele noncheie c)este n FN2 i are dependene complete d)este n FN1 i are dependene funcionale incomplete e)este n FN2 i are cel puin o dependen funcional complet ntre atributele noncheie i cheia tabelei 2.Calculul relaional: a)are drept construcie de baz expresia de calcul tuplu sau expresia de calcul domeniu b)este implementat n limbajul ISBL c)conine operatorul de jonciune d)st la baza limbajelor procedurale universale e)folosete noiunea de formul bine definit 3.O tabel este n FN1 dac: a)exist atribute la nivel de grup b)exist atribute repetitive c)nu exist atribute la nivel de grup d)exist atribute decompozabile e)nu exist atribute repetitive ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 33 3.7. Rspunsuri i comentarii la testele de autoevaluare 3.8. Bibliografia unitii de nvare 3 [CONN00]T.Connolly Database Systems, ed.Mc Graw Hill, 2000 [DATE94]J.DateAnintroductiontoDatabaseSystems,ed.Addison Wesley, 1994 [RICC01]G.RiccardoPrinciplesofDatabaseSystems-withInternet and Java Applications, ed.Addison Wesley, 2001 [VELU00]M.Velicanu,I.Lungu.a.Sistemedegestiuneabazelorde date, ed.Petrion, 2000 [VELU01]M.Velicanu, I.Lungu, M.Muntean Dezvoltarea aplicaiilor cu baze de date n Visual Foxpro, ed. ALL, 2001 1. a; 2. a, e; 3. c, e; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 34 Unitatea de nvare 4:METODOLOGIA DE REALIZARE A BAZELOR DE DATE Cuprins 4.1. Obiective 4.2. Organizarea unei baze de date4.3. Obiectivele urmrite n realizarea unei baze de date4.4. Etape n realizarea unei baze de date 4.5. Utilizarea metodologiei UML n proiectarea bazelor de date 4.6. Proiectarea bazelor de date relaionale o extensie UML 4.7. Eficiena bazelor de date 4.8. Rezumat 4.9. Teste de autoevaluare 4.10. Rspunsuri i comentarii la testele de autoevaluare 4.11. Bibliografia unitii de nvare 4 4.1. Obiective Dup studiul acestei uniti de nvare vei avea cunotine despre: Durata medie a unei uniti de studiu individual 12 ore activitatea de realizare a unei baze de date; organizarea activitii de realizare a unei baze de date (intrrile, memorarea datelor,proteciadatelor,legturiledatelor)astfelnct ssepoat decide dac merit sau nu demararea aciunii respective; metodologiile de realizare a bazelor de date; etapele (activitile) care trebuie parcurse n vederea realizrii unei baze de date: analiza de sistem, proiectarea noului sistem, realizarea componentelor logice, punerea n funciune, dezvoltarea; eficienaactivitiiderealizareabazelordedate,importantpentru evaluarea investiiei efectuate. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 35 4.2. Organizarea unei baze de date oActivitatea de realizare a unei baze de date trebuie s nceap cu organizarea acesteia, adic pregtirea aciunii. n cadrul acestei pregtiri, innd cont de obiectivele urmrite pentru realizarea bazei de date, se va face un fel de inventar a ceea ce este un minim necesar pentru a se putea realiza baza de date. Se poate astfel, din start, hotar dac activitatea va demara imediat sau dac mai sunt necesare alte aciuni pregtitoare. oPrezentm,ncontinuare,ctevaaspectemaiimportanteurmritela organizarea unei baze de date: 1.Organizarea intrrilor de date, se refer la: sursa datelor (documente primite, fiiere etc.); actualizarea datelor (moduri, momente, reorganizri etc.); controlul intrrilor de date (natur, coninut, format, periodicitate etc.). 2.Organizarea memorrii datelor, se refer la: principii de memorare (memoria intern/extern, forma de stocare, legturi ntre date, tehnici utilizate etc.); optimizarea memorrii (redundan, spaiu, alocare, codificare, reorganizare etc.). 3.Organizarea proteciei datelor sub cele dou aspecte (securitatea i integritatea), se refer la: instrumente oferite de ctre SGBD (autorizare acces, fiiere jurnal, arhivri etc.); metode proprii (parole, rutine speciale, antivirus etc.). 4.Organizarea legturilor bazei de date cu alte aplicaii, se refer la: conversii, standarde, compatibilitii, interfee etc. 4.3. Obiectivele urmrite la realizarea unei BD oAtunci cnd dorim s realizm o baz de dat trebuie s tim clar ce avem de fcut, adic s stabilim obiectivele activitii nostre. n acest sens, cteva dintre cele mai importante obiective, le prezentm n continuare. Acestea, ar trebui s constituie un set minim de obiective, de care s se in cont la realizarea unei baze de date: 1.Partiionarea semnific faptul c aceleai date trebuie s poat fi folosite n moduri diferite de ctre diferii utilizatori. 2.Deschiderea se refer la faptul c datele trebuie s fie uor adaptabile la schimbrile care pot aprea (actualizarea structurii, tipuri noi de date etc.). 3.Eficiena are n vedere stocarea i prelucrarea datelor, care trebuie s se fac la costuri ct mai sczute, costuri care s fie inferioare beneficiilor obinute. 4.Reutilizarea nseamn faptul cfondul de date existent trebuie s poat fi reutilizat n diferite aplicaii informatice. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 36 5.Regsirea este o actvitate frecvent pe bazele de date i de aceea cererile de regsire trebuie s poat fi adresate uor de ctre toate categoriile de utilizatori, dup diferite criterii. 6.Accesul nseamn modul de localizare a datelor i acest lucru trebuie s poat fi realizat prin diferite moduri de acces, rapid i uor. 7.Modularizarea presupune faptul c realizarea BD trebuie s se poat face modular pentru generalitate i posibilitatea lucrului n echip. 8.Protecia bazei de date trebuie asigurat sub ambele aspecte: securitatea i integritatea datelor. 9.Redundana se asigur n limite acceptabile prin implementarea unui model de date pentru baze de date i prin utilizarea unei tehnici de proiectare a BD. Se asigur astfel, o redundan minim i controlat. 10. Independena datelor fa de programe trebuie asigurat att la nivel logic ct i i fizic. 4.4. Etape n realizarea unei BD oActivitile (etapele) parcurse pentru realizarea unei BD sunt: analiza de sistem, proiectarea noului sistem, realizarea componentelor logice, punerea n funciune, dezvoltarea. 1.Analiza de sistem. Scopul acestei activiti este de a evidenia cerinele aplicaiei i resursele utilizate (studiul), precum i de a evalua aceste cerine prin modelare (analiza). STUDIUL situaiei existente se realizeaz prin: definirea caracteristicilor generale ale unitii; identificarea activitilor desfurate; identificarea resurselor existente (informaionale, umane, energetice, echipamente, financiare etc.); identificarea necesitilor de prelucrare. ANALIZA sistemului existent urmeaz investigrii (studiului) i utilizeaz informaiile obinute de aceasta. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 37 Fig. 4.1. Activitile parcurse pentru realizarea unei baze de date Analiza este o activitate de modelare (conceptual) [RICC01] i se realizeaz sub trei aspecte: structural, dinamic i funcional. a)Analiza structural evideniaz, la nivel conceptual,modul de structurare a datelor i a legturilor dintre ele. Cea mai utilizat tehnic este entitate-asociere. Aceasta conine: 1)Identificarea entitilor: fenomene, procese, obiecte concrete sau abstracte (substantivele din prezentarea activitii descrise) (exemple de entiti: Persoane, Produse, Beneficiari). 2)Identificarea asocierilor dintre entiti ca fiind legturile semnificative de un anumit tip (verbele din prezentarea activitii descrise). 3)Identificarea atributelor ce caracterizeaz fiecare entitate n parte (exemple de atribute: Marca, Nume, Adres). 4)Stabilirea atributelor de identificare unica realizrilor entitii, drept chei. Rezultatul analizei structurale: modelul static (structural) numit i diagrama entitate-asociere. Not. Diagrama entitate-asociere (Entity-Relationship) poate fi generat cu produse software tip CASE (Computer Aided Software Engineering), ca de exemplu Oracle Designer. Pornind de la o astfel de diagram, se pot construi, n actvitatea de proiectare, schemele relaiilor (tabelelor). Pentru aceast translatare exist un set de 14 reguli [vezi RICC01] care pot fi aplicate. b)Analiza dinamic evideniaz comportamentul elementelor sistemului la anumite evenimente. Una din tehnicile utilizate este diagrama stare-tranziie. Aceasta presupune: 1)Identificarea strilor n care se pot afla componentele sistemului. 2)Identificarea evenimentelor care determin trecerea unei componente dintr-o stare n alta. 3)Stabilirea tranziiilor admise ntre stri. 4)Construirea diagramei stare-tranziie. Rezultatul analizei dinamice: modelul dinamic ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 38 c)Analiza funcional evideniaz modul de asigurare a cerinelor informaionale (fluxul prelucrrilor) din cadrul sistemului, prin care intrrile sunt transformate n ieiri. Cea mai utilizat tehnic este diagrama de flux al datelor. Conform acestei tehnici se delimiteaz: 1)Aria de cuprindere a sistemului. 2)Se identific sursele de date. 3)Se identific modul de circulaie i prelucrare a datelor. 4)Se identific apoi rezultatele obinute. Rezultatul analizei funcionale: modelul funcional. Not. Exemplu privind activitatea de analiz, sub toate cele trei aspecte prezentate mai sus, vezi n cartea [LUVE00]. 2.Proiectarea structurii bazei de date Pornind de la modelele realizate prin activitatea de analiz, se poate proiecta structura BD, parcurgnd dou subactiviti: alegerea SGBD-ului, proiectarea funciilor BD. a)Alegerea SBGD-ului se face innd cont de dou aspecte: cerinele aplicaiei (utilizatorului) i performanele tehnice ale SGBD-ului. Cerinele aplicaiei se refer la: volumul de date estimat a fi memorat i prelucrat n BD; complexitatea problemei de rezolvat; ponderea i frecvena operaiilor de intrare/ieire; condiii privind protecia datelor; operaii necesare pe baza de date (ncrcare/validare, actualizare, regsire etc.); particulariti ale activitii pentru care se realizeaz baza de date. Performanele tehnice ale SGBD-ului se refer la: modelul de date pe care-l implementeaz; ponderea utilizrii SGBD-ului pe pia i tendina; configuraia de calcul minim cerut; limbajele de programare din SGBD; faciliti de utilizare oferite pentru diferite categorii de utilizatori; limitele SGBD-ului; optimizri realizate de SGBD; faciliti tehnice: -lucrul cu mediul distribuit i concurena de date; -elemente de multimedia; -elemente de CASE; -interfee de comunicare; -autodocumentarea; -instrumente specifice oferite. b)Proiectarea funciilor BD (vezi i [RAGE00]) se realizeaz prin: proiectarea schemelor BD, proiectarea modulelor funcionale specializate. Proiectarea schemelor BD se realizeaz pornind de la rezultatele modelrii conceptuale (analiza de sistem) i innd cont de modelul de date implementat de SGBD-ul ales. Se vor proiecta schemele: conceptual, extern, intern. Proiectarea schemei conceptuale pornete de la identificarea setului de date necesar sistemului. Aceste date sunt apoi integrate i structurate ntr-o schem (exemplu: pentru BD relaionale cea mai utilizat tehnic este normalizarea). Pentru acest lucru se parcurg paii: 1.Stabilirea schemei conceptuale iniiale care se deduce din modelul entitate-asociere (vezi analiza structural). Pentru acest lucru, se transform fiecare ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 39 entitate din model ntr-o colecie de date (fiier), iar pentru fiecare asociere se definesc cheile aferente. Dac rezult colecii izolate, acestea se vor lega de alte colecii prin chei rezultnd asocieri (1:1, 1:M, M:N). 2.Ameliorarea progresiv a schemei conceptuale prin eliminarea unor anomalii (exemplu: cele cinci forme normale pentru BD relaionale). 3.Stabilirea schemei conceptuale finale trebuie s asigure un echilibru ntre cerinele de actualizare i performanele de exploatare (exemplu: o form normal superioar asigur performane de actualizare, dar timpul de rspuns va fi mai mare). Proiectare schemei externe are rolul de a specifica viziunea fiecrui utilizator asupra BD. Pentru acest lucru, din schema conceptual se identific datele necesare fiecrei viziuni. Datele obinute se structureaz logic n subscheme innd cont de facilitile de utilizare i de cerinele utilizator. Schema extern devine operaional prin construirea unor viziuni (view) cu SGBD-ul i acordarea drepturilor de acces. Datele ntr-o viziune pot proveni din una sau mai multe colecii i nu ocup spaiul fizic. Proiectarea schemei interne presupune stabilirea structurilor de memorare fizic a datelor i definirea cilor de acces la date. Acestea sunt specifice fie SGBD-ului (scheme de alocare), fie sistemului de operare. Proiectarea schemei interne nseamn realizarea operaiilor: 1.estimarea spaiului fizic pentru BD i definirea unui model fizic de alocare (a se vedea dac SGBD-ul permite explicit acest lucru); 2.definirea unor indeci pentru accesul direct, dup cheie, la date; Un ghid privind activitatea de indexare [RAGE00] pentru baze de date, poate include paii: -necesitatea indexrii: se indexeaz dac se reduce timpul de cutare sau dac este necesar ordonarea datelor; -alegerea cheii de indexare: atributele din clauzele WHERE / FOR sunt candidate pentru chei; -cheile construite din atribute multiple: mai multe atribute separate (cheie multipl) sau concatenate (cheie compus), ntr-o anumit ordine; -tipul de indexare: arbori (pentru cereri cu egalitate), hash-cod (pentru cereri cu jonciune) etc.; -costul ntreinerii indecilor este dat de dou aspecte: indecii se terg dac operaiile care-i implic sunt rare (se reduce astfel spaiul) i indecii se pstreaz dac operaiilecare-i implic sunt dese (se reduce astfel timpul). 3.construirea unor clustere, care nseamn regruparea fizic a datelor din BD, pentru a permite un acces mai rapid pentru anumii utilizatori. Datele pot proveni din una sau mai multe colecii. Clusterele genereaz avantaj la regsire i dezavantaj la actualizare, n ceea ce privete timpul de rspuns. Proiectarea modulelor funcionale ine cont de concepia general a BD, precum i de schemele proiectate anterior. n acest sens, se proiecteaz: fluxul informaional; modulele de ncrcare i manipulare a datelor; interfeele specializate; integrarea elementelor proiectate cu organizarea i funcionarea BD. 3.Realizarea componentelor logice Componentele logice ale unei BD sunt programele de aplicaie dezvoltate, n cea mai mare parte, n SGBD-ul ales. Programele se realizeaz conform modulelor funcionale proiectate n etapa anterioar. Componentele logice in cont de ieiri, intrri, prelucrri i coleciile de date. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 40 n paralel cu dezvoltarea programelor de aplicaii se ntocmesc i documentaiile diferite (tehnic, de exploatare, de prezentare). 4.Punerea n funciune i exploatarea Se testeaz funciile BD mai nti cu date de test, apoi cu date reale. Se ncarc datele n BD i se efectueaz procedurile de manipulare, de ctre beneficiar cu asistena proiectantului. Se definitiveaz documentaiile aplicaiei. Se intr n exploatare curent de ctre beneficiar conform documentaiiei. 5.Dezvoltarea sistemului Imediat dup darea n exploatare a BD, n mod continuu, pot exista factori perturbatori care genereaz schimbri n BD. Schimbrile necesare trebuie preluate de BD uor i din mers. Factorii pot fi: organizatorici, datorai progresului tehnic, rezultai din cerinele noi ale beneficiarului, din schimbarea metodologiilor etc. 4.5.Utilitatea metodologiei UML n proiectarea bazelor de date oComplexitateadeosebitaasistemeloractualeadeterminat abordareapescaralargaaprincipiilororientariiobiectualenu doar n ceea ce priveste programarea ci si n proiectarea lor, lucru careaavutconsecintesiasupraproiectariibazelordedate.n generalmodelareaorientataobiect(genUML)esteprivitaca apanajuldoaralproiectarii(saudezvoltarii)aplicatiilororientate obiect. Aceasta abordare se dovedeste nsa limitata avnd n vedere doua aspecte : 1.Pedeoparteproiectareaaplicatiilor(orientateobiect)cubazededateseparatade proiectareabazeidedatevaproduceunnivelsuplimentardemapareaentitatilorcare figureazanceledouaariilanivelconceptual.Proiectareaunuisistemintegratdincaresa rezulte concertat ce obiecte vor fi stocate persistent n baza de date, ce obiecte vor face parte din package -urile sau modulele aplicatiilor rezidente sub forma componentelor si modul cum vor interactiona ntre ele se poate dovedi o alternativa mai buna. Singurul substrat suplimentar (care poate fi modelat si el prin stereotipuri UML) ar fi cel al maparii entitatilor conceptuale n structurile oferite de modelul logic al bazei de date pentru stocare si regasire. 2. Pe de alta parte modelele logice ale bazelor de date relationale comerciale propun astazi o seriedeconceptenoicumsuntprocedurilestocatesideclansatoarelecarenufacpartedin modelerelationaletraditionalesideobiceinusuntluatenconsiderarenfazaproiectarii bazei de date . Valorificarea direct n proiectarea conceptuala a acestora se poate face folosind concepteorientateobiectsimecanismeledeextensibilitatealeunuilimbajdemodelarecum este UML. MotivatiilepentrucaremetodologiaUMLarfipotrivitasipentruspecificareamodelelor implicate n proiectarea bazelor de date (fata metodele traditionale) ar putea fi rezumate astfel: modelulstructuralalUMLncorporeazatoateconceptelemodeluluientitaterelatie (celmaipopularmodelpentruproiectareaconceptualaabazelordedate)plus conceptelespecificemodelelorsemantice(generalizare,agregare)siabordarii orientateobiect(mostenire,polimorfism,suprancarcare).LimbajulUMLposeda ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 41 mecanismeledeextensibilitate(restrictii,stereotipuri,note,etichete)carefacposibila specializareamodeluluinfunctiedeaspecteleparticularealesistemelorcubazede date (flexibilitate sporita n modelare); conceptelelimbajuluiUMLpropununvocabularcomunntremodelelerezultatedin proiectarea sistemului ca ansamblu si cele din proiectarea specifica bazei de date; metodologiaUML(procesulunificat)favorizeazamuncanechipa:scopulfolosirii UMLpentrumodelareaproceselorafacerii,dezvoltariiaplicatiilorsimodelariibazei dedateesteintegrareaechipelordedezvoltarepentruampiedicaconstruireaunei arhitecturifaraimplicareacorespunzatoarenacestprocesatuturorechipelorcare concura la realizarea sistemului n ansamblu; integrareainstrumentelordedezvoltaredindiferiteleariideinteresdincarerezulta arhitecturasistemuluipebazauneiplatformeconceptualecomune.Instrumentele CASEbazatepemetodologiiobiectualeofereauinitialsuportpentruproiectarea generalaasistemuluisimaiputinpentruproiectareadedetaliu.Cualtecuvinte arhitecturasistemuluierasprijinitaprininstrumenteupperCASEdestuldeslab integrate cu cele lower CASE.Adoptarea UML ca limbaj de modelare a produs n acest sens doua mutatii: aparitiadenoiinstrumenteCASEcareoferasuportpentruntregcicludedezvoltare pna la obtinerea unei versiuni complete a sistemului (gen Rational Rose); integrareadenoifacilitatidedicatemodelariinmediilededezvoltareintegrate comerciale(gensuitelededezvoltaredelaBorland,MicrosoftsauOracle)cu posibilitatideproiectarevizualadincaresarezultecomponentelecontinndcodul sursa sau scripturile pentru generarea schemelor bazelor de date. Implicarea metodologiei UML n proiectarea bazelor de date nu constituie un pas artificial ci o integrare naturala cu procesul mai larg al construirii sistemelor informationale pe principii obiectuale. 4.6.Proiectarea bazelor de date relaionale o extensie UML oDiagramaclaselorprezintunmecanismneutrudeimplementare pentru modelarea aspectelor ce in de stocareadatelor sistemului. Claselepersistente,atributeleacestorairelaiiledintreelepotfi implementate direct ntr-o baz de date orientatobiect. Cu toate acestea, n prezent, bazele de date relaionale rmn modalitatea de stocare a datelor cea mai uzual. DiagramaclaselordinUMLpermitemodelareaunoraspectespecificeproiectriibazelorde daterelaionale,darnuacopernntregimeaceastproblematic,denotatfaptulcnu prevedenoiuneadeatributecheiecaresuntmecanismulprincipalderelaionareatabelelor. Pentru a surprinde mai bine aceste aspecte este bine s se apeleze la diagrama entitate asociere (ER), n completarea setului de diagrame propus de UML. Diagrama claselor poate fi utilizat pentruamodelalogicbazadedate,independentdefaptulcsealegeoimplementare relaional sau orientat obiect, prin clase reprezentndu-se tabelele, iar prin atribute coloanele acestora.Dacsealegepentruimplementareunmediurelaional,atuncidiagramaclaselor poatefiuortranslatatntr-odiagramlogicentitateasociere.Claselorpersistentei atributeloracestoralecorespundentitilelogiceiatributelelor,iarrelaiilordintreclasele corespund relaii ntre entiti. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 42

Fig. 4.2. Proiectarea BDR cu ajutorul diagramei entitate asociere Odatntocmitaceastdiagramsepoatetrecelaproiectareabazeidedaterelaionale conform tehnicii normalizrii. 4.7.Eficiena bazelor de date oEfecteledirecteiindirectealebazelordedateconducspre eficien, mai ales pentru aplicaiile mari i complexe, acolo unde alte produse informatice nu fac fa. Efectele utilizrii BD conduc spre avantajele oferite de acestea: elimin redundanele necontrolate; crete productivitatea activitii informatice; ofer suport informaional optim pentru conducere i execuie; permite interogarea datelor de ctre toate categoriile de utilizatori; conduce spre aplicaii deschise. Efortul depus pentru realizarea i ntreinerea unei BD este considerabil i de aceea investiia necesar trebuie fundamentat pentru a putea fi recuperat. FundamentareainvestiieipentruoaplicaiecuBDsefaceprinstudiuldefezabilitate (analizapreliminar)carevaconineunstudiualcosturilorioevaluareaefortuluide realizare i ntreinere. Etape care trebuie parcurse pentru stabilirea eficienei BD: 1.Studiul costurilor iniiale (de realizare) costul software-ului necesar; costul hardware-ului necesar; costul impus de trecerea de la sistemul existent la SBD; costul resurselor necesare (umane, materiale, informaionale etc.); costul consultanei tehnice. 2.Evaluarea costurilor de funcionare a BD costul de punere n funciune; ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 43 costul de exploatare; costul de ntreinere i dezvoltare. 3.Calcule de rentabilitate utilizarea unor metode specifice (exemplu: Analiza Cost Beneficiu) utilizareaunorinstrumentehardwareisoftwarespecializatepentruBD(cresc performana, scad portabilitatea). 4.8. Rezumat Activitatea de realizare a unei baze de date este complex i cere un efort considerabil. De aceea, ea trebuie realizat sistematic, dup o metodologie adecvat. naintedeaserealizaobazdedate,searenvedereorganizareaacesteiactiviti (intrrile,memorareadatelor,proteciadatelor,legturiledatelor)astfelnctsse poat decide dac merit sau nu demararea aciunii respective. Dup luarea deciziei c baza de date este posibil a fi realizat, se fixeaz cteva dintre obiectiveleimportantealeacesteiactiviti:partiionarea,deschiderea,eficiena, reutilizarea, regsirea, accesul, modularizarea, protecia, redundana, independena. n continuare, pentru realizarea bazei de date, se poate urma o metodologie anume sau sepotparcurgeetapele(activitile)prezentate:analizadesistem,proiectareanoului sistem, realizarea componentelor logice, punerea n funciune, dezvoltarea. Att pe parcursul realizrii unei baze de date ct i dupaceea, trebuie avut n vedere eficienaacesteiactiviti.Acestlucruesteimportantpentrucinvestiiapentru realizareauneibazededateestemareieaserecupereazntimp.Eficenabazeide datevaaveanvedereaspecte:studiulcosturiloriniiale,evaluareacosturilorde funcionare, calcule de rentabilitate etc. ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 44 4.9. Teste de autoevaluare 4.10. Rspunsuri i comentarii la testele de autoevaluare 4.n metodologia de realizare a BD diagrama entitate-asociere rezult n urma: a)analizei funcionale b)proiectrii dinamice c)analizei structurale d)analizei dinamice e)proiectrii logice 5.Eficiena unei baze de date poate fi evaluat prin: a)studiul organigramei ntreprinderii b)studiul costurilor iniiale c)calcule de rentabilitate d)calcule relaionale e)algebra relaional 6.n metodologia de realizare a BD, construirea unei viziuni (view) se face prin: a)proiectarea schemei externe b)proiectarea schemei conceptuale c)proiectarea schemei interne d)analiza logic e)analiza global 7.Obiective urmrite n realizarea unei BD sunt:a)aceleai date nu pot fi utilizate n moduri diferite b)creterea preului de cost pentru memorarea datelor c)cererile de regsire trebuie s fie doar prestabilite d)aplicaiile cu baze de date trebuie s poat reutiliza un fond de date existent deja e)redundana minim dar necontrolat 1. c; 2. b, c; 3. a; 4. d;ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 45 4.11. Bibliografia unitii de nvare 4 [SIKO97]A.Silbershartz,H.Korth.a.Databasesystemconcepts, ed.McGraw-Hill, 1997 [DATE94]J.DateAnintroductiontoDatabaseSystems,ed.Addison Wesley, 1994 [MACI01]L.MaciaszekRequirementsanalysisandsystemdesign- developingInformationsystemswithUML,ed.Addison Wesley, 2001 [DIAZ00]O.DiazAdvanceddatabasetechnologyanddesign, ed.Piattini, 2000 [RAGE00]R.Ramakrishnan, J.Gehrke Database Management Systems, ed.Mc Graw Hill, 2000 [RICC01]G.RiccardoPrinciplesofDatabaseSystems-withInternet and Java Applications, ed.Addison Wesley, 2001 [VELU00]M.Velicanu,I.Lungu.a.Sistemedegestiuneabazelorde date, ed.Petrion, 2000 [VELU01]M.Velicanu, I.Lungu, M.Muntean Dezvoltarea aplicaiilor cu baze de date n Visual Foxpro, ed. ALL, 2001 [VELU02]M.Velicanu,I.Lungu,M.Muntean,M.Iorga,S.Ionescu Oracle platform pentru baze de date, ed. Petrion, 2002 ACADEMIA DE STUDII ECONOMICE BUCURETI FACULTATEA DE CIBERNETIC, STATISTIC I INFORMATIC ECONOMIC CATEDRA DE INFORMATIC ECONOMIC 46 Unitatea de nvare 5:BAZE DE DATE ORIENTATE OBIECT ( BDOO) Cuprins 5.1. Obiective 5.2. Conceptul de baze de date orientate obiect 5.3. Elemente de proiectare a BDOO 5.4. Tehnici de implementare utiliza