280 likes | 550 Views
SGBD. Un SGBD = o interfaţă între utilizatori şi BD, ce p ermite : crearea , actualizarea şi consultarea BD . SGBD = instrument de asamblare, codificare, aranjare, protecţie şi regăsire a datelor în BD. Bazele de date sunt gestionate unitar
E N D
SGBD Un SGBD = o interfaţă între utilizatori şi BD, ce permite: crearea, actualizarea şi consultareaBD. SGBD = instrument de asamblare, codificare, aranjare, protecţie şi regăsire a datelor în BD • Bazele de date sunt gestionate unitar • prin programe dedicate, numite sisteme de gestiune a bazelor de date(SGBD). • Facilitatile unui SGBD sunt: • memorarea datelor pe suportul extern prin sistemul de gestiune a fişierelor; • gestiunea datelor şi a legăturilor dintre ele în vederea regăsirii rapide • prin intermediul sistemului de acces (SGBD intern); • introducerea şi extragerea datelor dinspre exterior în forma cerută de utilizator • prin intermediul SGBD–ului extern.
Administrator BD BD DD SGBD Utilizator final 1 Utilizator final n Programe de aplicaţii SGBD Funcţii principale: • descrierea datelorprin schemele: externă, conceptuală, internă şi legăturile corespondente, prin intermediul unui limbaj specializat (LDD) • vizează deopotrivă structurile de date, legăturile între acestea şi regulile care să asigure coerenţa datelor(numite şi reguli de integritate) • manipularea datelor (LMD) • Interogarea bazelor de date • Actualizarea datelor • protejarea bazelor de date • utilizatori, drepturi de acces, • reluare în caz de pană, • copii de siguranţă Baza de date se descrie independent de programele care folosesc datele. Descrierea datelor formează Dicţionarul Datelor (DD), care se memorează împreună cu BD
Obiective SGBD • Manipularea uşoară a datelor, - limbaj declarativ SQL ; • Gestiunea relaţiilor virtuale, SGBD- ul stochează definiţia relaţiei virtuale şi nu rezultatul; • Executarea şi optimizarea cererilor, automatizarea procesului de traducere şi eventual optimizare a cererilor formulate în limbaj declarativ; • Gestiunea coerenţei, datele sunt supuse la un anumit număr de restricţii de integritate ce definesc coerenţa bazei de date. Ele trebuie să poată fi exprimate şi verificate automat la fiecare operaţie de actualizare a bazei de date. • Partajarea datelorpentru a permite mai multor utilizatori să acceseze baza de date în acelaşi timp. SGBD- ul trebuie să gestioneze accesul concurent la baza de date; • Confidenţialitatea, protejarea bazei de date contra unui acces neautorizat;
Obiective SGBD • Gestiunea "penelor", când o "pană" se produce trebuie să se asigure recuperarea bazei de date în starea în care era înainte de producerea ei; • Standarde, SGBD relaţionale folosesc pentru gestiunea bazelor de date standardul SQL.
Domeniul de studiu Proces modelare Schema externă 1 Grup utilizatori 1 Grup utilizatori 2 Schema externă 2 Schemă fizică Schema conceptuală Grup utilizatori n Schema externă n BD Nivel extern Nivel conceptual Nivel fizic • Niveluri de reprezentare a unei Baze de date
Domeniu de aplicaţie Nivel Extern Utilizator 1/ Grup de utilizatori 1 Administratori aplicatie Schema externă1 Schema externăn Utilizator 1/ Grup de utilizatori 1 Administratori aplicatie Administrator BD Nivel conceptual Schema conceptuală Nivel intern Modelul fizic Administrator BD BD • Nivelul extern de descriere a BD se face de către Administratorul aplicaţiei, care: • defineşte schema externă • defineşte regulile de corespondenţă cu schema conceptuală Schema externă face referire la datele necesare unui utilizator sau unui grup de utilizatori. Ea este o sub-schemă (o imagine) a schemei conceptuale. Schemele externe constituie sursa pentru întocmirea schemei conceptuale
Domeniu de aplicaţie Nivel Extern Utilizator 1/ Grup de utilizatori 1 Schema externă1 Schema externăn Utilizator 1/ Grup de utilizatori 1 Administrator BD Nivel conceptual Schema conceptuală Nivel intern Modelul fizic Administrator BD BD Nivelul conceptual de descriere a BD se face de către Administratorul Întreprinderii La nivel conceptual, analizând schemele externe şi eliminând redundanţele rezultă o nouă viziune la nivelul întreprinderii, care se numeşte schema conceptuală. Nivelul conceptual se concretizează prin schema conceptuală care este exprimată utilizând conceptele de tabel (relaţie), atribute şi restricţii de integritate Trecerea de la fizic la conceptual se face prin modelare O schemă conceptuală este completă dacă poate furniza date pentru toate schemele externe, adică datele de care au nevoie utilizatorii (unele obţinute prin calcul şi/sau agregare).
Domeniu de aplicaţie Nivel Extern Utilizator 1/ Grup de utilizatori 1 Schema externă1 Schema externăn Utilizator 1/ Grup de utilizatori 1 Administrator BD Nivel conceptual Schema conceptuală Nivel intern Modelul fizic Administrator BD BD • Nivelul intern de descriere a BD se face de către Administratorul BD care: • defineşte schema internă de organizare a datelor • defineşte regulile de trecere de la schema conceptuală la cea internă Schema internă implementează schema conceptuală folosind un SGBD. Se refera la modul de stocare fizică a datelor pe suporturi de date. Schema internă se obţine prin descrierea bazelor de date folosind un limbaj de descriere date (LDD). Faptul că utilizatorul vede baza de date folosind o schemă externă facilitează determinarea drepturilor de acces la baza de date
Domeniu de aplicaţie Nivel Extern Utilizator 1/ Grup de utilizatori 1 Schema externă1 Schema externăn Utilizator 1/ Grup de utilizatori 1 Administrator BD Nivel conceptual Schema conceptuală Nivel intern Modelul fizic Administrator BD BD Pentru o bază de date se pot defini mai multe scheme externe, o singură schemă conceptuală şi respectiv o singură schemă internă. CONLUZIE : un SGBD trebuie să poată interpreta instrucţiunile exprimate în termeni de schemă externă şi respectiv schemă conceptuală iar după aceea în termeni de operaţii de intrare/ieşire la nivel fizic şi să asigure trecerea de la un nivel la altul.
Schema relaţională MRD Problemă Proiectare BD Descriere LDD SGBD LMD ( ) Manipularea datelor BD LDD, limbaj de descriere date, LMD, limbaj de manipulare date Proiectarea BDR • Dezvoltarea unei aplicaţii cu baze de date normalizare Modelul E-A conversia MCD - MRD
Integritatea bazelor de date • Integritatea este proprietatea datelor de a deţine un nivel de calitate stabilit aprioric, adecvat şi suficient într-un context dat. • I este starea existentă atunci când datele electronice sunt identice cu datele din documentele sursă sau din domeniul problemei modelate, nefiind expuse la alterări accidentale sau intenţionate ori distrugeri fizice. • I este starea existentă atunci când calitatea informaţiei stocate este protejată de contaminare sau degradare cu informaţie de slabă calitate.
Integritatea bazelor de date Asigurarea integrităţii datelor este condiţionată de luarea a trei tipuri de precauţii: • fizice: ce garantează stabilitatea în timp a suporturilor fizice de date şi a procedurilor; • semantice: care asigură coerenţa datelor stocate în raport cu semnificaţia acestora independent de mijloacele materiale utilizate; • juridice: care controlează accesul la informaţii (prin intermediul cheilor de acces);
Siguranţa suportului de date şi a procedurilor = Integritate fizică Autentificarea + Confidenţialitate + Non-repudiere = Integritate „juridică” Validitate+ Coerenţa Semantică = Integritate logică şi semantică Integritatea datelor Integritatea bazelor de date
Integritatea bazelor de date Metodele şi tehnicile ce ţin de integritatea şi securitatea bazelorde date urmăresc: • Asigurarea coerenţei datelor stocate în raport cu semnificaţia acestora(asigurarea integrităţii semantice). • Controalele de validare a datelor reprezintă una dintre soluţiile de implementare a integrităţii semantice, rolul acestor controale fiind acela de a evita introducerea de date neconforme realităţii în baza de date şi de a verifica faptul că baza de date nu a fost supusă unor alterări de acest tip. SGBD-urile oferă o multitudine de facilităţi pentru a garanta integritatea semantică a datelor (reguli de validare pentru câmpuri şi controale, instrucţiuni, clauze, descrieri de trigger-e, etc.) dar nu şi fiabilitatea lor, care ţine de modalitatea în care s-a organizat şi desfăşurat procesul de culegere a datelor.
Integritatea bazelor de date • Asigurarea sincronizării accesului concurent la baza de date are în vedere acţiunile concurente ale mai multor utilizatori şi evitarea interferenţei acestora într-un mod prin care să-şi prejudicieze reciproc acţiunile. • Asigurarea siguranţei în funcţionare în urma unor defecţiuni fizice ce pot afecta coerenţa bazei de date (pană de curent, catastrofe naturale, etc.) • Asigurarea securităţii de utilizare are în vedere aspectele de: • confidenţialitate (asigurarea că datele nu pot fi citite decât de persoanele autorizate), • autentificare (asigurarea asupra identităţii interlocutorului); • non-repudiere (ansamblu de mijloace şi tehnici ce permit confirmarea participării unei entităţi la un schimb de date, pentru prevenirea nerecunoaşterii tranzacţiei de către expeditor).
Integritatea bazelor de date • Tranzacţia reprezintă o secvenţă liniară de operaţii executate asupra unei baze de date partajate de mai mulţi utilizatori. • Tranzacţiile se folosesc, de obicei, într-o procedură în care se execută mai multe operaţii de actualizare a bazei de date şi se doreşte garantarea faptului că toate operaţiile s-au executat cu succes. • În cazul apariţiei unei erori la una din actualizări toate cele anterioare se pot anula.
Integritatea bazelor de date O tranzacţie poate fi: • Salvată (commited)-în situaţia în care toate operaţiile tranzacţiei au fost încheiate cu succes, iar baza de date a fost actualizată. • Derulată înapoi (rollback)-în situaţia în care toate operaţiile tranzacţionate au fost anulate, iar baza de date a fost restaurată la starea dinaintea tranzacţiei. Când o tranzacţie actualizează mai multe înregistrări aparţinând uneia sau mai multor tabele, o aplicaţie informatică trebuie să se asigure că toate înregistrările au fost actualizate sau că toate au rămas în starea iniţială.