Informatica de Gestiune
Informatica de gestiune
Bazele de date constituie un element foarte des intalnit in viata noastra de toate zilele. Un dictionary, cartea de telefon, o enciclipedie sunt baze de date dintre cele mai cunoscute.
O baza de date reprezinta un ansamblu de date integrat, anume structurat si dotat cu o descriere a acestei structure. Descrierea poarta nnumele de dictionar de date sau meta-date() informatii despre date) si creeaza o inderdependenta intre datele propriu-zise si programe.
O explicatie a acestei definitii este ca baza de date este mai mult decar o colectie de fisiere. Ea include, pe langa acestea, dictionarul de date si o descriere a relatiilor dintre inregistrari, descriere chemata si utilizata pe intreaba durata a prelucrarii informatiilor.
Tipuri de baze de date
Se cunosc trei tipuri de baze de date: relational, ierarhic si in retea. Diferenta dintre ele consta in modul de organizare a informatiilor.
Baze de date relationale
Cel mai simplu, din punctul de vedere al intelegerii bazelor de date este tipul relational. In mod paradoxal, acest tip s-a raspandit ultimul printre sistemele practice si anume o data cu microcalucatoarele si calculatoarele personale profesionale.
Sistemul de baze de date relational are aceeasi structura fizica cu datele ce trebuie prelucrate. De cele mai multe ori acestea din urma se prezinta sub forma unor tablouri( relatii) cu linii si coloane- liniile constituind obiectele iar coloanele atributele ce caracterizeaza aceste obiecte.
Baze de date ierarhice
Bazele de date ierarhice sunt construite pentru a facilita informatia organizata ierarhic. Diagramaele unor asemnea baze de date sunt arborescente, fiecare element fiind subordonat unui element, si numai unuia, apartinand bazei.
Baze de date in retea
Bazele de date in retea seamana cu cele ierarhice, diferenta constand in aceea ca un “copil” poate avea mai mult decat un “parinte”.
Intr-un system de date in retea, baza de date este construita dintr-o colectie de seturi. Fiecare set se compune dintr-o suma de inregistrari, acestea din urma fiind asemanatoare cu Acela pe care le cunoastem din sistemul relational, numai ca lungimea lor e variabila.
O inregistrare poate fi, la randul ei, rezultatul mai multor seturi.
Sisteme de gestiune a bazelor de date
Sistemul de gestiune a bazelor de date este acesl simtem de programe care faciliteaza si supervizeaza introducerea de informatii in baza de date, actualizarea si extragerea datelor din baza, controlul si autorizarea accesului la date, precum si asigurarea unei independente intre structura bazei de date si programele de aplicatie.
Un system de gestiune a bazelor de date trebuie sa fie capabil sa indeplineasca urmatoarele functii de : descriere, manipulare si utilizare.
Functia de descriere permite definirea structurii datelor si a relatiilor dintre acestea. De asemenea, tot prin intermediul acestei functii, se defines si conditiile de aces la informatiile continute in baza de date. Descrierea structurii se realizeaza cu ajutorul unui limbaj de descriere a datelor (LDD) propriu fiecarui system de gestiune. Exista totusi, si unele elemente comune de descriere aproape unanim acceptate si anume:
Articol sau camp ce se defineste ca fiind cel mai mic element al unei structuri logice sau virtuale ce poate fi identificat, el este asociat, de regula, unei valori
Subgrup reprezinta gruparea unor campuri sub acelasi identificator
Grup sau segment reprezinta un ansamblu de articole si subgrupuri correlate logic, care dispun de un nume si de o caracteristica comuna
Inregistrare reuniune de mai multe inregistrari referitoare la acelasi obiect dat.
Relatiile dintre diferitele elemente ale structurii dunt denumite in mod diferit in cadrul unpor SGBD-uri:
lant- in sistemele IDS , Socrate
legatura in sistemul IMS
set- in cadrul conceptuluiCODASYL
Setul este format dintr-o inregistrare principala (OWNERS) si mai multe inregistrri subordinate ei (MEMBERS).
In general, cu ajutorul limbajului de descriere se realizeaza:
Atribuirea unui identificator fiecarei informatii sau grup de informatii
Descrierea ierarhica a informatiilor
Specificarea grupurilor repetitive de date’
Definirea lungimii si naturii fiecarui camp (numeric, alfa-numeric, etc. )
Definirea intervalului de variatie a valorii posibile a campului
Definirea parolelor si a autorizatiilor special pentru anumite campuri.
Functia de manipulare permite efectuarea urmatoarelor operatii: crearea, inserarea, suprimarea sau actulizarea unor inregistrari definite de utilizator. De asemenea, functia de manipulare faciliteaza cautarea, sortarea si editarea totala sau partial a unor inregistari virtuale corespunzatoare rezultatelor unor intrebari formulate prin intermediul limbajului de manipulare.
Limbajele de manipulare pot fi grupate in doua mari categorii:
Autonome, in cadrul carora comezile de manipulare reprezinta chiar functii referitoare la utlizarea datelor
Limbaje gazda, in care operatiile de manipulare se realizeaza cu ajutorul limbajelor la nivel inalt (COBOL, FORTRAN etc)
Functia de utilizare permite comunicarea intre utilizator si baza de date sub aspectul asigurarii acelor mijloace de comunicare care il avantajeaza cel mai mult pe utilizator.
Din punctul de vedere al functiei de utilizare, utilizatorii pot fi de mai multe categorii:
-utilizatorii liberi sau conversationali – au la dispozitie limbaje de interogare intr-o forma foarte apropiata de vorbirea curenta si formeaza grupa utilizatorilor nespecialisti. Acestia folosesc, de regula, display-ul, intrebarile sunt prestabilite, nu conosc nici structura si nici modul de lucru cu baza de date si se rezuma la apelarea unor procedure sau programe corespunzatoare anumitor aplicatii.
-utilizatorii parametrici – faz uz, de regula, la limbaje de menipulare ( in special pentru interogare) , folosind proceduri prestabilite. Ei au constiinte de programare si cunosc atat structura bazei de date, cat si problemele sistemului de operare, ceea ce le permite sa obtina avantaje maxime in comparative cu prelucrarea fisierelor clasice.
-administratorul bazei de date . Acesta este un utilizator special care raspunde de toate activitatile si operatiile referitoare la baza de date ce o gestioneaza, inclusive performantele acesteia. El defineste obiectivele sistemului, ajuta la definirea cerintelor utilizatorilor, defineste structura virtuala si imparte drepturile de acces ale utilizatorilor, stabileste procedurile de validare a datelor, elaboreaza conceptia de protective a datelor si evalueaza performantele sistemului, Administratorul raspunde de alegerea si implementarea SGBD-ului, asigura incarcarea bazei de date, defineste strategia de lucru si distribuie documentatia tututor utilizatorilor.
Informatica de gestiune , Felicia Albescu, Ed. Fundatiei Romania de maine, Bucuresti, 1998
Dezavantajele procesarii datelor stocate in fisiere prin programe dedicate grupate in sisteme informatice ce se suprapun pe alocuri (redundanta datelor, dependenta date-programe) s-a rezolvat prin aparitia unei tehnologii de stocare si procesare a datelor-tehnologia bazelor date.
Baza de date este o colectie de fisiere ce contine atat datele cat si structura inregistrarilor.
Fiecare fisier se completeaza cu un antet ce contine descrierea inregistrarilor. Antetul poate fi atasat fisierului sau se creeaza un fisier special de structure pentru toate fisierele bazei de date, un dictionary al datelor ( DATA DICTIONARY)
Baza de date inglobeaza fisierele necesare mai multor aplicatii, ea fiind construita pe principiul stocarii tuturor datelor disponibile, nu numai a celor neaparat necesare. Fiecar data se stocheaza intr-un singur loc in baza de date, eliminandu-se astfel redundanta datelor cu efectele sale colaterale: sinonimia, omonomia si incoerenta datelor.
Fisierele bazei de date contin astfel numai date singular, date semnificative pentru obiectul sau evenimentul care a fost sursa de date pentru fisierul respectiv.
Pentru a avea acces la date stocate in alte fisiere, date ce au legatura cu cele din fisiereul curent (cel procesat la un moment dat) bazele de date au un mechanism de stabilire de legaturi intre fisiere, legaturi ce folosesc accesul direct prin intermediul unui camp cheie.
Cu specificarea acestei functii deosebit de importante in realizarea integrarii sistemelor informatice si implicit a accesului partial partajat, definitia unei baze de date devine:
Baza de date este o colectie de fisiere cu legaturi intre ele care stocheaz date si informatii accesibile mai multor utilizatori.
Sisteme de gestiune a bazelor de date
Sistemul de gestiune a bazelor de date este un pachet de programe ce ofera utilizatorului facilitate de organizare, access si control asupra datelor.
(figura 1)
SGBD formeaza o interfata intre sistemul de operare si utilizator preluand o parte din functiile sistemului de operare sau transmitand acestuia cererile utilizatorului.
SBGD implementeaza un model predefinit de organizare a datelor , un model logic mai elaborat decat modelul indexat secvential sau relativ.
Aceste modele se disting prin tipurile de legaturi care se pot face intre inregistrarile fizice din fisiere. Datele sunt stocate in inregistrari cu legaturi intre ele. Legaturile pot fi reale, fizice ( la adresa inregistrarii la care se face referinta) sau logice (valoarea cheii inregistrarii la care se face referinta)
Cele mai cunoscute modele logice sunt modelul ierarhic, retea si relational.
Principalele functi ale SGBD:
Sistemele de gestiune a bazelor da te acopera urmatoarele activitati:
-organizare-access ( implementeaza unul dintre modelele de SGBD fara ca utilizatorul sa intervina in mod explicit)
-control ( permite utlizatorului sa-si exprime cererile sub forma de comenzi sau programe; sa elaboreze programele, sa le organizeze in aplicatii, sa lanseze aplicatiile in executie, sa aiba un permanent control asupra lor).
In detaliu, functiile unui SGBD sunt:
Functia de stocare , actualizare si regasire a datelor
Functia de stocare, actualizare si regasire a metadatelor
Asigurarea accesului concurrent ai mai multor utilizatori la acceasi baza de date
Asigurarea salvarii si restaurarii bazei de date din eventualele incidente
Asigurarea securitatii datelor (confidentialitatea lor)
Asigurarea integritatii datelor ( datele respecta anumite restricii impuse)
Asigurarea independentei programelor utilizatorului de datele pe care le prelucreaza
Asigurarea unor programe de serviciu ( utilitare)
Limbaj pentru descrierea datelor (LDD)
Limbaj pentru manipularea datelor (LDM)
-Limbaj declarativ (comenzi)
-Limbaj procedural (in care regasim comenzile limbajului declarative utilizat ca instructiuni + instructiuni speciale de control al executei programului).
Limbaj pentru interogarea datelor
-limbaj declarativ
-limbaj graphic
Asigurarea accesului la sistemul de operare
Asigurarea unui mediu de lucru de a patra generatie:
-intrumente software:
-editor
-compilator/interpretor
-depanator
-generatoare ( de ecrane -machete; de rapoarte-situatii; de documentatie; de aplicatii-meniuri)
Help on-line ( existent unor mesaje de informare pe care utilizatorul le poate solicita in parallel cu executia altor functii ale SGBD
Interfata grafica a utilizatorului cu SGBD ( sa permita alegerea de optiuni ce corespund limbajelor. Limbajele clasice formeaza o interfata in mod caracter.
Functiile 3,4,5,6 sunt functii ale sistemului de operare preluate de SGBD pentru a ajunge la utlizatori. Functiile 1,2,7 sunt functii dictate de specificul mediului de lucru cu bazele de date.
Cele 8 functii ale SGBD nu sunt implentate intotdeauna in totalitate. Din acest motiv avem SGBD de diferite generatii. Setul minim de functii ce trebuie acoperit: functia 1 si 2-gestiunea datelor si metadatelor, functia 7 , iar din utilitate functia 8. Functia cea mai slab implementata este functia 6.
Baze de date –Fundamente teoretice si practice- florescu Vasile, Nastase pavel, Berbec Florentina, Ed Infomega , 2002
Organizarea datelor pe memoria externa a parcurs in timp mai multe etape: fisiere, fisiere cu legaturi si a culminat cu bazele de date actuale. Un fisier este un anasamblu de inregistrari fizice, omogene din punct de vedere al continutului si al prelucrarii. O inregistrare fizica este unitatea de transfer intre memoria interna si cea externa a calculatorului; ea poate contine una sau mai multe inregistrari logice. O inregistrare logica este unitatea de prelucrare din punct de vedere al programului utilizator. Structura sa este data de campuri ( caracteristici) ce descriu o anume realitate.
Fisierul nu are are descriere proprie : este este cunoscut de sistemul informatic numai prin descrierea care face parte din program. Organizarea si accesul la datele unui fisier sunt asigurate de un set de programe specializate, numit Sistem de Gestiune a Fisierelor (SGF) care face parte din sistemul de operare (SO).
Daca un fisier este utilizat de catre mai multe programe, fiecare program va include in componenta sa elementele de descriere a datelor din fisier ( figura ..)
(imagine adica figura 1.3)
Fisierele contin in cea mai mare parte elemente comune, iar asocierile dintre date nu sunt bine exploatate dat fiind faptul ca fisierele sunt utilizate izolat si independent unele de altele.
Utilizarea fisierelor a fost o solutie specifica anilor ‘60-’70, dar mai este intalnita si astazi in cazul unor aplicatii economice care folosesc limbaje clasice si indeseobi limbajul COBOL.
O alta solutie, dominanta in prezent, consta in organizarea datelor in baze de date.
C. Delobel, M. Adiba dau urmatoarea definitie bazei de date: “un anasamblu structurat de date inregistrate pe suporturi accesibile calculatorului pentru a satisfice simultan mai multi utilizatori de o maniera selective si intr-un timp oportun”.
O completare la aceasta afirmatie o consideram utila: ansamblu strucurat de date ce contine structuri de date legate functional intre ele” I.
Bazele de date sunt gestionate unitar prin programele dedicate, numite sisteme de gestiune a bazelor de date (SGBD).
Baza de date se descrie independent de programele care folosesc datele. Descrierea vizeaza deopotriva structurile de date, legaturile intre acestea si regulile care sa asigure coerenta datelor. Descrierea datelor formeaz Dictionarul Datelor (DD) care se memoreaza impreuna cu BD (figura ..)
(figura 1.4)
Performantele inregistrate in informatica ( hardware si software) au determinat extinderea distribuirii informaticii in intreprinderi si implicit deschideri spre:
-orientarea spre arhitecturi client-server
-distribuirea bazelor de date, consecinta a distribuirii in spatii a sub-unitatilor unei intreprinderi si a facilitatilor oferite de retelele extinse
-baze de date avansate :
-baze de date active, in care activarea se fondeaza pe procedure activate la aparitia unui eveniment si daca sunt indeplinite anumite conditii;
– baze de date deductibile, care cupleaza/integreaza un motor de reguli de deductie si o baza de date ;
– baze de date multidimensionale (Data Warehouse) ce sunt colectii voluminoase de date destinate managementului intreprinderii, organizate de regula multidimenstional si exploatate folosind procedure de analiza multidimensionale (OLAP) sau proceduri de analiza statistic-matematice (Data mining).
Arhitectura generala a unui SGBD
Un SGBD constituie o interfata intre utilizatori si BD , care permite in principal crearea, actualizarea si consultarea acesteia. In acest context putem define SGBD ca un instrument de asamblare, codificare, aranjare, protectie si regasire a datelor in BD (Figura …)
Imagine cu figura …
Functiunile generale pe care le indeplineste un SGBD sunt:
-memorarea datelor pe suportul extern prin sistemul de gestiune a fisierelor
-gestiunea datelor si a legaturilor dintre ele in vederea regasirii rapide prin intermediul sistemului de access (SGBD intern)
-introducerea si extragerea datelor dintre exterior in forma ceruta de utilizator prin intermediul SGBD –ului extern.
Obiectivele unui SGBD
Obiectivul principal a unei BD este de a separa descierea datelor fata de programele de aplicatii, idee care a fost exprimata pentru prima data in anul 1965. Pentru atingerea acestui obiectiv este necesara o abstractizare a datelor memorate in BD. Astfel s-a ajuns ca astazi sa existe 3 niveluri de reprezentare si perceptie a unui BD: extern, conceptual si intern.
La fiecare nivel se defineste o schema a bazei da date (Figura …)
Imagine cu figura/.//
Schema externa face referire la datele necesare unui utilizator sau unui grup de utilizatori. Ea este o sub-schema(o imagine) a schemei conceptuale.
La nivel conceptual, analizand schemele externe si eliminand redundantele rezulta o noua viziune la nivelul intreprinderii, care se numeste schema conceptuala. O schema conceptuala este complete daca poate furniza date pentru toate schemele externe, adica datele de care au nevoie utilizatorii.( unele obtinute prin calcul si/sau agregare).
Schema interna implementeaza schema conceptuala folosind un SGBD. Pentru o baza de date se pot defini mai multe scheme externe, o singura schema conceptuala si respectiv o singura schema interna. Faptul ca utilizatorul vede baza de date folosind o schema externa faciliteaza determinarea drepturilor de acces la baza de date.
Sistemul de gestiune a bazelor de date trebuie sa poata interpreta instructiunile exprimate in termen de schema externa si respective schema conceptuala iar dupa aceea in termen de operatii de intrare/iesire la nivel fizic sis a asigure trecerea de la un nivel la altul.
Plecand de la obiectivul principal putem spune ca principalele obiective ale SGBD-ului sunt:
-independenta fizica a datelor
-independenta logica a datelor
-manipularea datelor prin limbaje declarative (neprocedurale);
-administrarea intr-o maniera cat mai simpla a datelor;
-eficacitatea accesului la date
-partajarea datelor
-coerenta datelor
-redundanta controlata
-securitatea datelor
Independenta fizica a datelor
Schema interna a BD descrie modul in care datele sunt organizate pe suport fizic ( fisiere, inregistrari) precum si metodele de acces, criteriile de ordonare si regasire ale acestora, astfel incat sa se asigure un grad de performanta si suplete cat mai ridicat.
Independenta fizica a datelor consta in posibilitatea de a schimba organizarea interna a datelor si structurile de inregistrare, fara a modifica programele care le folosesc (programe utilizator). Raportandu-ne la structura pe cele 3 niveluri, aceasta inseamna independent schemei interne de cea conceptuala, care descrie aceleasi date, dar pe niveluri diferite. Spre exemplu, pe baza unor criteria de performanta si flexibilitatea accesului la date, se pot adauga indecsi noi, se pot reorganiza anumite fisiere, fara a afecta schema conceptuala.
Independenta logica a datelor
Schema conceptuala a BD se obtine printr-o sinteza si integrare a schemelor externe, care reprezinta interese informationale de grup sau individuale. In aceste conditii, este normal ca fiecare grup de utilizatori sa aiba posibilitatea sa-si modifice in timp cerintele informationale fara a afecta schema conceptuala a BD.
Independenta logica a datelor consta in posibilitatea de a modifica schemele externe fara a modifica schema conceptuala. Principalele avantaje ale independentei logice a datelor sunt urmatoarele:
-permite oricarui grup de utilizatori sa vizualizeze datele asa cum isi doresc
-permite evolutia in timp a schemelor externe ale fiecarui grup de utilizatori fara a afecta schema conceptuala
-permite evolutia unei anumite scheme externe fara a afecta celelalte scheme externe
Manipularea datelor prin limbaje declarative (neprocedurale)
In general, exista doua categorii de utilizatori care manipuleaza datele dintr-o BD: utilizatori interactivi si sunt programatorii. Prima categorie, are nevoie de limbaje de interogare foarte simple, apropiate limbajului natural, care sa le permita intr-o maniera foarte simpla sa obtina informatiile de care au nevoie. Un exemplu de astfel de limbaj , care este si standardizat, este SQL ( Structured Query Language). Cea de-a doua categorie de utilizatori folosesc de regula limbaje procedural cum sunt cele traditionale (C, COBOL), limbaje orientate –obiect (C++, Java) sau limbaje orientate pe descrierea specificatiilor la nivel utilizator final.
Administrarea cat mai simpla a datelor
Un SGBD trebuie sa furnizeze instrumente adcvate pentru descrierea datelor, atat din punct de vedere al schemei externe cat si al schemei interne.
Operatiile de descriere si modificare a descrierii datelor sunt cunoscute sub numele de admistrarea datelor. Pentru a permite un control eficient asupra datelor si a rezolva diferite conflicte asupra definirii datelor, aceasta operatie cade in sarcina admistratorilor de date.
Eficacitatea accesului la date
Fiecare utilizator doreste ca interogarile sale asupra BD sa furnizeze informatiile necesare acestuia intr-un timp cat mai scurt.Exista doi parametric care masoara performantele accesului la date: numarul de tranzactii pe secunda si timpul de raspuns.
Partajarea datelor
Se realizeaza prin controlul accesului concurent la BD. Mai multi utilizatori doresc sa acceseze simultan acceasi inregistrare in BD. Fizic, acest lucru nu este posibil deoarece mecanismul de acces la disc si la memoria interna este unic.Prin urmare, cererile de acces simutane sunt inregistrate intr-un fir de asteptare si sunt deservite intr-o anumita ordine.
Coerenta datelor consta in respectarea unor dependente care pot exista intre datele din BD. Regurile explicite sau implicite pe care datele trebuie sa le respecte de-a lungul evolutiei lor in BD se numesc restricitii de integritate.
Redundanta controlata consta in posibilitatea de a inregistra unele datele, eliminand astfel situatiile de inregistrare multiple. Cu cat redundanta este mai mica cu atat performantele bazei de date cresc.
Securitatea datelor se refera la doua aspecte:
-accesul controlat al utilizatorilor la BD (confidentialitate)
-refacerea BD in urma unor distrugeri logice(anomalie de actualizare) sau fizice
Confidentiualitatea datelor este asigurata prin proceduri de:
-autentificare a utilizatorilor prin nume sau cod
-autentificare prin parole
-autorizare a accesului diferentiat prin drepturi de creare, consultare, modificare sau stergere pentru anumite segmente de date
…..
…..
….
Cap 4. Access- ce a avut si spiridon
O baza de date Access poate fi definite ca o colectie de obiecte: tabele, interogari, formulare , rapoarte, pagini web, comenzi macro si module.
Tabela (Table) este in obiect definit de utilizator in care sunt stocate datele primare ( expresia modelului relational)
Interogarea ( Query) este un obiect care permite vizualizarea informatiilor obtinute prin prelucrarea datelor din una sau mai multe tabele si/sau alte cereri de interogare
Formularul (Form) este un obiect care permite introducerea datelor, afisarea acestora sau controlul intregii aplicatii
Raportul (Report) este un obiect care permite formatarea si tiparirea informatiilor obtinute in urma consultarii bazei de date sub forma de documente
Pagina Web de accesare a datelor (Pages) reprezinta un obiect care include un fisier HTML si alte fisiere suport in vederea furnizarii accesului la date prin intermediul browser-elor de Internet.
Comanda macro (Macro) reprezinta un obiect care contine o definitie structurata a uneia sau mai multor actiuni pe care Access le realizeaza ca raspuns la un anumit eveniment’
Modulul (Module) reprezinta un obiect care contine proceduri definite de utilizator si scrise in limbajul de programare Visual Basic.
Octavian Basca, Baze de date, Editura Bic All, Bucuresti , 1997
O baza de date contine toate informatiile necesare despre obiectele ce intervin intr-o multiume de aplicatii, relatiile logice intre aceste informatii si tehnicile de prelucrare corespunzatoare.
Sistemul de programe care permite construirea unor baze de date, introducerea informatiilor in bazele de date si dezvoltarea de aplicatii privind bazele de date se numeste sistem de gestiune a bazelor de date (SGBD). SGBD este o interfata intre utilizatori si sistemul de operare.
LLD este utilizat atat pentru proiectarea BD cat si pentru redefinirea lor.
Utilizatorii BD:
-utilizatori obisnuiti car eot sa obtina informatiile fara sa aiba cunostiinte de programare.
-programatorii de aplicatii
-administratorul bazei de date care stabileste structura initiala a bazei de date si modul de memorare a datelor la nivel fizic, acorda utilizatorilor drepturi de acces la baza de date sau parti ale ei, stabileste conditiile pentru asigurarea securitatii si integritatii datelor, modifica structura bazei de date daca este nevoie, asigura intretinerea bazei de date
-administratorul sistemului de baze de date stabileste bazele de date de pe un sistem de calcul, aloca spatii de memorare si asigura drepturi de acces.
Arhitectura unei baze de date
O baza de date poate fi privita din mai multe puncte de vedere cum sunt:
-punctul de vedere al utilizatorilor, care lucreaza cu anumite parti componete ale bazei de date numite vederi. Vederile sunt descrise prin subscheme in sublimbaje ale limbajului de descriere a datelor (SLDD). De asemenea, utilizatorii pot sa primeasca raspunsuri la diferitele cereri formulate prin intermediul limbajului de prelucrare a datelor ce sunt specific structurilor virtuale date de vederi.
-punctul de vedere al administratorului bazei de date, care integreaza toate vederile referitoare la baza de date intr-un singur model numit schema conceptuala. Schema conceptuala constituie nivelul logic al bazei de date.
Punctul de vedere al implementatorului bazei de date, de cele mai multe ori, el coincide cu administratorul bazei de date , care priveste baza de date ca pe o colectie de fisiere memorate pe diferite medii externe. Acesta constituie nivelul fizic al bazei de date fiind de fapt singurul nivel existent efectiv .
Fiecare dintre cele trei nivele contine subnivele.
Primele doua nivele sunt descrise prin planuri ce constau in enumerarea tipurilor de entitati ce apar in baza de date, relatiile dintre aceste tipuri de entitati si modul de trecere de la notiunile acestui nivel la nivelul imediat urmator. In mod curent, aceste planuri se numesc scheme externe, subscheme conceptuale sau vederi pentru primul nivel si scheme conceptuale pentru al doilea nivel. Descrierile la nivel fizic sunt facute prin scheme interne sau scheme fizice.
Modele de baze de date
Un model relational de baze de date cuprinde trei component principale:
-structura datelor prin definirea unor domenii( valori atomice) si a relatiilor n-are ( attribute, tupluri, chei primare etc)
-integritatea datelor prin impunerea de restrictii
-prelucrarea datelor prin operatii din algebra relationala sau calculul relational
De obicei relatiile sunt reprezentate sub forma unor tabele in care fiecare rand reprezinta un tuplu si fiecare coloama reprezinta valorile tuplurilor dintr-un domeniu dat al produsului cartezian.
Modelul retea este cel mai apropiat de forma de reprezentare a bazelor de date sub forma diagramelor entitate-relatie. In modelul retea, entitatilor le corespund fisiere logice care au drept campuri atributele entitatii si eventualele campuri de legatura pentru relatii. Fiecarui element al entitatii ii corespunde o inregistrare logica. Daca inregistrarile sunt identificate numai prin relatia cu alte entitati, atunci se mai adauga la inregistrarea logica inca un camp ce cuprinde un numar de ordine care permite identificarea acelor inregistrari.
Modelul ierarhic ( arborescent) poate fi privit ca un caz particular al modelului retea
1994, Ed All, Sisteme de gestiune a bazelor de date Dbase, Oracle Gheorghe Popa, Alexandru Stefanescu, Victoria Stanciu, Veronica Ivancenco, Valeria Mares
Conceptul de baza de date a aparut pentru prima data in titul unei conferinte organizate in Santa Monica (California, Statele Unite) in 1964 (Development and Management of Computer- Centered Data Base) .De la aceasta data notiunea de baza de date a evoluat intr-o maniera semnificativa.
Data si informatie
Datele (din cartea lui enachescu) este o insiruire de caractere numerice sau alfanumerice cu o anumita semnificatie, o descriere letrica/cifrica a unui fenomen,process, obiect, fapt, eveniment sau a unei actiuni.
Informatia este acea data care aduce un plus de cunoastere si care serveste pentru luarea unei decizii.
Informatiile sunt date de semnificatiile si legaturile ce pot fi deduse din ansamblu de date.
Baze de date si fisier
Un fisier este un ansablu de dare ce poate fi manipulate de mai multi utilizatori intr-o viziune unica asupra datelor. Viziunile multiple ar putea fi obtinute prin sortarea datelor, modificarea structurii si regruparea fisierelor, fapt ce implica modificarea programelor.
O baza de date este un anasamblu de date ce poate fi manipulate de mai multi utilizatori in viziuni diferite asupra datelor.
Alta definitie a bd:
Baza de date este un sistem de colectii de date intre care exista o interdependenta logica multipla, potrivit unor relatii prestabilite cu ocazia descrierii conceptuale; sistemul de colectii de date putand fi exploatat de mai multi utilizatori in viziuni diferite ( subscheme).
…
Conform metodologiei amintite sunt deci de retinut trei niveluri functionale ale bazelor de date:
-nivelul conceptual care este depozitarul semnatic al bazei de date. Acet nivel reprezinta o abstractie a universului modelat si serveste ca referire globala pentru viziunile particulare( scheme externe)
Nivelul extern (logic) cuprinde viziunile specific definite pentru manipularea datelor. Necesitatile de date ale utilizatorilor sunt exprimate la acest nivel.
O viziune externa reprezinta intr-o maniera cat mai aproape de realitate, un tip de utilizator al bazei de date:
-nivelul extern, corespunde reprezentarii datelor pe suporturile de date. Aces nivel contribuie la eficacitatea transpunerii si implementarii nivelului conceptual.
Modelul conceptual relational
In anul 1969 matematicianul C. F. Codd de la centrul de cercetari IBM din San Jose ( California) , a expus modelul relational de organizare a bazelor de date .
Modelul relational permite:
-o descriere simpla sub forma tabelara
-actualizarea datelor fara anomalii de stocaj
-manipularea neprocedurala a datelor
1995, editura All Educational, Bucuresti
Baze de date Analiza, proiectare si implementare
Ion C Lungu, Constanta Bodea, georgeta Badescu, Cristina Ionita
Baze de date
Conceptul de baza de date a aparut in 1969 cu ocazia prezentarii primului raport CODASYL ( in cadrul unei conferinte pe probleme de limbaje de gestiune a datelor). Ideea principala in organizarea datelor se baza pe existenta unui fisier de descriere globala a datelor prin care realiza independent programelor fata de date si a datelor fata de programe (figura 1.10)
Bazele de date sunt extreme de variate in functie de criteriile luate in considerare. Prezentam cateva criterii:
-dupa orientare: generalizate, specializate
-dupa modelul de date: ierarhice, retele, relationale, orientate obiect
-dupa amploarea geografica:locale, distribuite
-dupa limbajele utilizate: autonome ( limbaje proprii) , cu limbaj gazda, mixte.
Arhitectura bazelor de date evidentiaza componetele acestora si a fost standardizata international. O astfel de arhitectura generala cuprinde :
-baza de date propriu-zisa in care se memoreaza colectia de date
-sistemul de gestiune a bazei de date, care este un ansamblu de programe ( soft) care realizeaza gestiunea si prelucrarea complexa a datelor
-un set de proceduri manuale si automate , precum si reglementarile administrative, destinate bunei functionary a intregului sistem
-un dictionar al bazei de date ( metabaza de date), ce contine informatii despre date, structura acestora, elemente de descriere a semanticii, statistici, documentatie etc.
-mijloacele hard utilizate( comune, specializate etc.)
-personalul implicat: utilizatori finali-neinformaticieni, de specialitate- administrator, analisti-programatori)
Sistemul de gestiune al bazei de date reprezinta software-ul propriu-zis al acesteia care asigura realizarea urmatoarelor activitati:
-definirea structurii bazei de date
-incarcarea datelor in baza de date
-accesul la date (interogare, actualizare)
-intretinerea bazei de date( colectarea si refolosirea spatiilor goale, refacea bazei de date in cazul unui incident)
-reorganizare bazei de date ( restructurarea si modificarea strategiei de acces)
-securitatea datelor
Asadar SGBD apare ca un sistem complex de programe care asigura interfata intre o baza de date si utilizatorii acestuia.
SGBD-URI SI MODELELE DE REPREZENTARE A DATELOR
De la primul SGBD si pana in present, au aparut o diversitate de SGBD-uri, unele care au avut success pe piata iar altele care au putut fi utilizate de cei ce le-au proiectat si realizat. In marea majoritate a cazurilor, un SGBD a fost conceput in jurul unui model conceptual de reprezentare a datelor, realizatorii lui incercand sa implementeze cat mai mult din specificatiile unui asemenea model. Pornind de la modelele conceptuale de reprezentare a datelor consecrate, au aparut SGBD-uri care nu sustin numai un anumit model, ci pur si simplu, au cautat sa aduca extensii la unul existent, sau sa combine doua modele si in acelasi timp sa introduca si noi extensii. In aceste conditii exista, practice, SGBD-uri care nu au fost concepute sa implementeeze fidel specificatiile unui anumit model conceptual, unele fiind concepute pentru a gestiona anumite categorii de informatii speciale (este, indeosebi,cazul SGBD-urilor multimedia), sau pentru sustinerea unor concept noi privitoare la fenomenul de informare.
Dupa modelul conceptual de reprezentare a datelor sustinut SGBD-urile se clasifica in:
SGBD-uri ierarhice;
SGBD-uri retea;
SGBD-uri relationale;
SGBD-uri orientate obiect;
SGBD-uri mixte relationale-orientate obiect;
SGBD-uri ierarhicese fondeaza pe modelul ierarhic de reprezentare a datelor.
Performantele oferite de un SGBD care sustine acest model sunt destul de limitate deoarece:
nu permite modul de acces direct decat datelor de pe nivellul radacina;
pentru a avea acces la date de pe nivele inferioare, trebuie specificat traseul de acces catre acestea, acest traseu fiind unul secvential; timpul penru cautare poate fi destul de mare;
stergerea datelor de pe un nivel superior, are ca effect stergerea tuturor datelor din nivelele subordinate nivelului sters;
operatia de adaugare presupune precizarea nodului superior pozitiei unde se va realiza;
Dintre SGBD-urile organizate pe baza acestui model mentionam: SYS 2000, IDMS, IMS*,GIS, etc.
SGBD-urile retease fondeaza pe modelul retea de reprezentare a datelor si domina piata anilor ’70. A existat o diversitate de SGBD-uri retea: IDS(Integrated Data Store), TOTAL, ARGUS, LEDA, etc. Elemantele de baza in implementare modelul retea sunt inregistrarile si legaturile intre inregistrari.
Preocuparile pe linia normalizarii bazelor de date retea s-au materializat in elaborarea unui model retea standard numit de specialist modelul CODASYL. Majoritatea SGBD-urilor retea a fost implementat acest model. Exeptie face indeosebi SGBD-SOCRATE.
SGBD-urilor relationale – Desi modelul relational care este la baza acestor SGBD-uri a fost elaborat inca din anul 1969, dezvoltatea SGBD-urilor relationale a luat amploare spre sfarsitul anilor 80 si inceputul anilor ’90. In anul 1986 a fost elaborate prima versiune standardizata a limbajului SQL.
Succesul SGBD-urilor relationale se datoreaza urmatoarelor avantaje:
modelul de date relational are un fundament theoretic solid si riguros, bazat pe principii simple;
asigura independeanta programelor fata de date acest lucru determinand ca la modificarea structurilor de date aplicatiile realizate sa nu fie afectate;
SGBDR-urile sunt adaptate realizarii de aplicatii complexe si se caracterizeaza prin fiabilitate si performanta;
SGBDR-urile actuale sunt realizate sa rspunda cerintelor impuse de arhitecturile client-server.
Limitele SGBDR-urilor actuale privesc urmatoarele aspecte:
Simplitatea modelului datelor, care initial a reprezentat un avantaj consistent, prin cerinta de atomicitate face uneori dificila reprezentarea unor obiecte complexe apartinand realitatii;
Simplitatea modelului datelor si existent limbajului declarative SQL (care este native) induce interfatarea cu un limbaj de programare care permite sa raspunda la restrictii complexe. De accea, dialogul dintre baza de date si limbaj nu este direct.
Normalizarea conduce la cresterea numarului de tabele si deci la fragmentarea structurii de date. Extragerea informatiilor din baza de date impuneadesea compunerea tabelelor ceea ce ridica probleme de performanta in momentul in care stilul de interogare devine navigational.
Functionarea in mod client server (vezi capitolul 8) disociaza partea client, responsabila de partea de prezentare a rezultatelor de partea de server responsabil de gestiunea bazei de date si de executarea cererilor clientilor (figura 2.12).
Figura 2.12
SGBD-uri relationale: dBASE,VISUAL FOXPRO, FOXBASE, INGRES, ORACLE, ACCESS, etc.
SGBD-urile orientate obiect sunt fondate pe modelul obiect. Conceptele legate de un
SGBD orientat obiect au fost clarificate de Atkinson in articolul numit “manifesto”.
Conform acestuia, un SGBD orientat obiect trebuie sa satisfaca doua categorii de functionalitati: unele specific bazelor de date in general si altele specific orientarii obiect. Ambele categorii de functionalitati, au fost impartite in functionalitati obligatoriicare nu trebuie sa lipseasca din nici un SGBD orientat obiect si functionalitati optionale.
Conform lui Atkinson, functionalitatile obligatorii, specific bazelor de date, ale unui SGBD orientat obiect sunt:
Persistenta obiectelor – se refera la posibilitatea salvarii obiectelor in baza de date;
Permiterea accesului concurent la un obiect;
Asigurarea atomicitatii tranzactiilor;
Interogarea bazei de date sa se realizeze la un nivel performant cu un limbaj in genul SQL;
Functionalitati specific bazelor de date, optionale:
Posibilitatea elaborarii de baze de date orientate obiect destribuite;
Gestiunea versiunilor obiectelor – posibilitatea de a accesa toate versiunile unui obiect;
Desi exista realizari notabile in domeniu exista putine SGBD-uri orientate obiect care au deposit progul laboratoarelor de crecetare. In literature de specialitate sunt citate indeosebi O2,UniSQL, IRIS, etc. In §11.3 sunt prezentate elementele specifice SGBDO.
SGBD-uri obiect-relationale se fondeaza pe modelul obiect-relational. Multe dintre SGBD-urile relationale sunt extinse pentru a putea implementa modelul obiect-relational. Dintre acestea cel mai utilizat, la data realizarii prezentei lucrari, este SGBD (…)
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Informatica de Gestiune (ID: 149911)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
