Caracteristici Esențiale ale SGBD și SGBC

Curs
9.4/10 (5 voturi)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 63 în total
Cuvinte : 35079
Mărime: 140.22KB (arhivat)
Cost: Gratis
Profesor îndrumător / Prezentat Profesorului: Christian Mancaş
TENDINŢE ACTUALE ÎN INDUSTRIA SGBD -Sisteme de Gestiune a Bazelor de Date (SGBD)

Cuprins

1. TENDINŢE ACTUALE ÎN INDUSTRIA SGBD 5

Sisteme de Gestiune a Bazelor de Date (SGBD) 5

Tranzacţii 5

Arhitecturi Client / Server 6

Sisteme deschise şi bd distribuite 8

Baze de date distribuite 8

Programe interfaţă de acces 9

Medii de procesare paralelă 9

Arhitecturi fără partajare 10

Arhitecturi cu discuri partajate 10

Arhitecturi cu memorie partajată 11

Patru tipuri de cuplare a procesoarelor: strânsă, lejeră, simetrică, şi asimetrică 11

Procesarea paralelă a tranzacţiilor şi interogărilor 11

Procesarea paralelă a indexurilor şi a programelor utilitare 12

Sisteme orientate obiect 12

Gestiunea obiectelor persistente în arhitecturi client / server 13

Un exemplu de bd orientată obiect 14

Integrarea în Internet 15

Cinci exemple de SGBD celebre 18

DATABASE2 (DB2) MVS / ESA versiunile 3 şi 4 ale IBM 18

Oracle 7.1 al Oracle 18

SQL Server 10.0 al Sybase 19

NonStop SQL / MP al Tandem 19

CA-OpenIngres al Computer Associates 19

Comentarii şi referinţe bibliografice 20

2. CONTROLUL CONCURENŢEI 21

Lacăte 21

Cele două tipuri fundamentale de lacăte: partajabil şi exclusiv 21

Granularitatea 22

Niveluri de izolare a lacătelor 23

Izolarea citirilor repetabile 23

Stabilitatea cursorului 23

Blocarea în două faze 24

Blocaje fatale 25

Blocaje fatale globale în bd distribuite 25

Comentarii şi referinţe bibliografice 26

Controlul concurenţei în DB2 26

Controlul concurenţei în NonStop SQL 27

Controlul concurenţei în Oracle 28

Controlul concurenţei în SQL Server al Sybase 29

Controlul concurenţei în CA-OpenIngres 30

3. SALVĂRI ŞI RECUPERAREA DIN EROARE 32

Jurnale de actualizări 32

Refacerea şi “desfacerea” automată a actualizărilor 32

Puncte de verificare 33

Recuperarea din dezastre 34

Comentarii şi referinţe bibliografice 34

Salvări şi recuperări în DB2 34

Salvări şi recuperări în NonStop SQL 35

Salvări şi recuperări în Oracle 35

Salvări şi recuperări în SQL Server al Sybase 36

Salvări şi recuperări în CA-OpenIngres 37

4. SECURITATEA DATELOR 38

Privilegii 38

Codificarea datelor şi verificarea accesului 38

Ierarhia nivelurilor de acces utilizator în bd distribuite 39

Comentarii şi referinţe bibliografice 39

Securitatea datelor în DB2 39

Securitatea datelor în NonStop SQL 39

Securitatea datelor în Oracle 40

Securitatea datelor în SQL Server 40

Securitatea datelor în CA-OpenIngres 40

5. IMPUNEREA CONSTRÂNGERILOR DE INTEGRITATE 41

Integritatea domeniilor de valori 41

Integritatea referinţelor 41

Trăgaciuri 42

Procesarea în două faze a terminării execuţiei tranzacţiilor 42

Comentarii şi referinţe bibliografice 44

Impunerea constrângerilor în DB2 44

Impunerea constrângerilor în NonStop SQL 45

Impunerea constrângerilor în Oracle 45

Impunerea constrângerilor în SQL Server 45

Impunerea constrângerilor în CA-OpenIngres 45

6. IMPLEMENTAREA FIŞIERELOR INDEX 46

Accesul “talmeş-balmeş” (“hash”) 46

Arbori B+ 47

Memorarea grupată a tuplilor în pagini 48

Comentarii şi referinţe bibliografice 48

Fişiere index în DB2 49

Fişiere index în NonStop SQL 49

Fişiere index în Oracle 49

Fişiere index în SQL Server 49

Fişiere index în CA-OpenIngres 49

7. OPTIMIZAREA PROCESĂRII ŞI ACCESULUI LA DATE 50

Optimizarea operatorului join 50

Implementarea “buclă în buclă” a joinului 50

Implementarea “sort/reuniune” a join-ului 50

Implementarea hibridă a joinului 51

Implementarea “talmeş-balmeş” a join-ului 51

Implementarea folosind semijoin-uri în bd distribuite 51

Alte tipuri de optimizări ale procesării datelor 52

Folosirea mai multor fişiere index per tabelă: implementarea “index AND” şi “index OR” a selecţiilor 53

Optimizarea accesului la date bazată pe reguli 54

Optimizarea accesului la date bazată pe costuri 54

Mecanisme de control a optimizării accesului la date 54

Optimizarea globală a accesului în bd distribuite 55

Comentarii şi referinţe bibliografice 56

Optimizarea în DB2 56

Optimizarea în NonStop SQL 57

Optimizarea în Oracle 57

Optimizarea în SQL Server 57

Optimizarea în CA-OpenIngres 57

8. CATALOAGE DE META-DATE 58

Structura şi conţinutul cataloagelor 58

Accesul utilizatorilor la cataloage 58

Gestiunea cataloagelor în bd distribuite 59

Comentarii şi referinţe bibliografice 59

Cataloagele în DB2 59

Cataloagele în NonStop SQL 60

Cataloagele în Oracle 60

Cataloagele în SQL Server 60

Cataloagele în CA-OpenIngres 60

9. INTERFEŢE DE PROGRAMAREA APLICAŢIILOR (API) 61

Interfeţe încorporate şi interfeţe apel 61

SQL static şi dinamic. Proceduri memorate 61

Comentarii şi referinţe bibliografice 62

API în DB2 62

API în NonStop SQL 62

API în Oracle 62

API în SQL Server 63

API în CA-OpenIngres 63

Extras din document

1. TENDINŢE ACTUALE ÎN INDUSTRIA SGBD

Sisteme de Gestiune a Bazelor de Date (SGBD)

Sistemele de Gestiune a Bazelor de Date (SGBD) sunt programe care procesează datele privite ca resurse partajabile. Ele permit utilizatorilor structurarea datelor (conform unui model conceptual) în baze de date (bd) şi exploatarea acestora concurent, de către mai mulţi utilizatori simultan. Pentru aceasta, ele asigură mecanisme cel puţin pentru:

- memorarea (structurată a) datelor

- accesul la date

- protecţia datelor (la tentative de acces neautorizat)

- păstrarea integrităţii datelor

- recuperarea din erori.

SGBD sunt azi oferite pe o mare varietate de platforme de calcul, pornind de la calculatoarele personale (PC) şi până la sistemele de procesare paralelă masivă a datelor, sub medii extrem de diverse, incluzând DOS, Windows, Novell Netware, Macintosh, Unix, OS/2, VMS, OS/400, MVS. Majoritatea liderilor mondiali din industria de programare oferă cel puţin un SGBD, dacă nu mai multe; dintre aceştia, este suficient să amintim IBM, Computer Associates, Sybase Inc., Oracle, Microsoft, Borland.

Marile corporaţii ale lumii, ca şi foarte multe dintre cele medii sau mici, depind de peste două decenii de SGBD, cărora le sunt încredinţate funcţiuni critice în afaceri, precum urmărirea vânzărilor, cheltuielilor, stocurilor, încasărilor sau plata salariilor. Dar şi foarte mulţi oameni fac apel la SGBD pentru uzul personal, fie că este vorba de monitorizarea investiţiilor familiale, fie de bd gestionând biblioteca proprie de cărţi, reviste, fotografii, diapozitive, casete audio, video, discuri şi CD-ROM-uri audio, video sau de date etc. Industria de SGBD genera în 1994 venituri depăşind 5 miliarde de dolari anual în lume, cifră mereu în creştere!

Tranzacţii

Orice SGBD trebuie să asigure, în primul rând, un limbaj de definire şi manipulare a datelor, conform modelului de date suportat. Prin intermediul acestuia, se oferă utilizatorilor, în esenţă, posibilitatea de a memora datele structurate în bd şi de a le accesa (pentru interogări şi/sau actualizări). Pentru a asigura partajarea datelor în medii multi-utilizator, SGBD trebuie să ofere mecanisme de grupare a tuturor operaţiilor care concură la îndeplinirea unei “sarcini logice unitare” într-o singură tranzacţie, astfel încât SGBD să poată garanta ori că execuţia unei tranzacţii a avut loc complet, fără a fi afectată de alte tranzacţii, ori că tranzacţia nu a fost deloc executată (bd nefiind deci afectată de tranzacţie).

Tranzacţiile sunt, prin urmare, singurele “instrucţiuni logice atomice” oferite de un SGBD; ca atare, ele ori se execută integral, ori deloc, în nici un caz parţial, dpdv al oricărei alte tranzacţii. Altfel spus, orice tranzacţie parţial executată (de exemplu, din cauza unei căderi de tensiune) trebuie abortată, iar toate efectele ei trebuie ignorate (“rolled back”). În caz contrar, în mod evident, ar putea rezulta stări inconsistente ale bd.

Exemplul 9.1

De exemplu, dacă o tranzacţie măreşte salariile angajaţilor unui departament cu 10%, iar o alta mută angajaţi din acel departament în alte departamente şi cele două tranzacţii nu s-ar executa atomic, ci execuţiile lor s-ar întrepătrunde, unii dintre angajaţii mutaţi ar putea avea salariile mărite înainte de mutare iar alţii nu! Pentru păstrarea consistenţei datelor, ori tranzacţia de mărire salarii a fost lansată prima iar cea de mutare angajaţi trebuie lansată după terminarea tuturor măririlor de salarii (cu efectul că toţi angajaţii mutaţi vor avea salariile mărite), ori, invers, tranzacţia de mutare angajaţi a fost lansată prima iar cea de mărire salarii trebuie lansată abia după încheierea tuturor mutărilor (cu efectul că nici unul dintre angajaţii mutaţi nu va avea salariul mărit).

Literatura de specialitate se referă, în acest sens, la cele patru proprietăţi ACIDe ale tranzacţiilor:

- Atomicitatea execuţiei (ori completă, ori deloc)

- Consistenţa (sau Corectitudinea) transformărilor induse conţinutului bd de către tranzacţie

- Izolarea execuţiei tranzacţiei, care nu trebuie să fie influenţată de modificările aduse bd de către orice altă tranzacţie concurentă

- Durabilitatea tranzacţiei, ale cărei modificări produse bd la terminarea execuţiei sale trebuie să fie permanente, supravieţuind oricăror căderi ale sistemului sau defecţiuni ale suporţilor de stocare a datelor.

Conceptul de tranzacţie şi de terminare a ei (“commit”, în engleză) joacă însă un rol la fel de important în controlul concurenţei, impunerea constrângerilor de integritate, salvarea datelor şi recuperarea din erori, aşa cum vom vedea în continuare.

Capitolele următoare discută despre problemele de implementare ale principalelor componente şi funcţii ale oricărui SGBD, indiferent de arhitectură sau de modelul suport al datelor, şi anume despre: controlul accesului concurent; securitate; integritate; indexuri; optimizare; cataloage; interfeţe de programarea aplicaţiilor (API); unelte utilitare.

De remarcat însă că, pe lângă toate aceste probleme “clasice” ce apar în implementarea SGBD, ca în mai toate domeniile (poate doar cu o viteză mult mai mare) şi această industrie trebuie permanent să se adapteze atât la noile cerinţe ale utilizatorilor, cât şi la avansurile tehnologice hard şi soft. Considerăm că cele mai semnificative tendinţe ce se manifestă azi în industria SGBD sunt următoarele:

- arhitecturile client / server

- mediile de calcul deschise, distribuite

- sistemele multiprocesor, cu procesare paralelă

- conceptualizarea orientată obiect

- integrarea în Internet.

Deşi toate acestea depăşesc cadrul fixat pentru prezenta lucrare, considerăm totuşi utilă măcar o trecere sumară în revistă a lor în continuarea acestui capitol introductiv al ultimei părţi.

Arhitecturi Client / Server

Până acum aproximativ un deceniu, SGBD erau aproape exclusiv proiectate pentru platforme de calcul centralizat, unicalculator, uniprocesor, care nu erau interconectate între ele. Două clase de SGBD, corespunzând celor două tipuri de platforme de calcul existente până la acea dată, erau disponibile:

- off-line (batch, bazate pe job-uri procesate ulterior), rulau pe platforme mari (mainframe, tipic IBM, sub OS, SIRIS sau MVS), folosind cartele perforate, în regim uniutilizator, uniproces; programele nu se executau în timp real, ci erau procesate ulterior, pe baza unui sistem de priorităţi. Acest tip de SGBD primitiv mai este încă folosit şi azi în lume, nu doar din considerente de amortizare a investiţiilor uriaşe făcute în echipamente şi programe, sau din conservatorism, ci şi datorită faptului că prelucrarea batch este în continuare cea mai potrivită pentru aplicaţiile de mai lungă durată (tip liste de salarii, de stocuri etc.), intensive, ce nu necesită interacţiune în timp real şi care deci se pretează la execuţia în afara orelor de program ale majorităţii utilizatorilor (exemplu: noaptea), când resursele sistemului de calcul ar fi, altfel, aproape nefolosite.

Preview document

Caracteristici Esențiale ale SGBD și SGBC - Pagina 1
Caracteristici Esențiale ale SGBD și SGBC - Pagina 2
Caracteristici Esențiale ale SGBD și SGBC - Pagina 3
Caracteristici Esențiale ale SGBD și SGBC - Pagina 4
Caracteristici Esențiale ale SGBD și SGBC - Pagina 5
Caracteristici Esențiale ale SGBD și SGBC - Pagina 6
Caracteristici Esențiale ale SGBD și SGBC - Pagina 7
Caracteristici Esențiale ale SGBD și SGBC - Pagina 8
Caracteristici Esențiale ale SGBD și SGBC - Pagina 9
Caracteristici Esențiale ale SGBD și SGBC - Pagina 10
Caracteristici Esențiale ale SGBD și SGBC - Pagina 11
Caracteristici Esențiale ale SGBD și SGBC - Pagina 12
Caracteristici Esențiale ale SGBD și SGBC - Pagina 13
Caracteristici Esențiale ale SGBD și SGBC - Pagina 14
Caracteristici Esențiale ale SGBD și SGBC - Pagina 15
Caracteristici Esențiale ale SGBD și SGBC - Pagina 16
Caracteristici Esențiale ale SGBD și SGBC - Pagina 17
Caracteristici Esențiale ale SGBD și SGBC - Pagina 18
Caracteristici Esențiale ale SGBD și SGBC - Pagina 19
Caracteristici Esențiale ale SGBD și SGBC - Pagina 20
Caracteristici Esențiale ale SGBD și SGBC - Pagina 21
Caracteristici Esențiale ale SGBD și SGBC - Pagina 22
Caracteristici Esențiale ale SGBD și SGBC - Pagina 23
Caracteristici Esențiale ale SGBD și SGBC - Pagina 24
Caracteristici Esențiale ale SGBD și SGBC - Pagina 25
Caracteristici Esențiale ale SGBD și SGBC - Pagina 26
Caracteristici Esențiale ale SGBD și SGBC - Pagina 27
Caracteristici Esențiale ale SGBD și SGBC - Pagina 28
Caracteristici Esențiale ale SGBD și SGBC - Pagina 29
Caracteristici Esențiale ale SGBD și SGBC - Pagina 30
Caracteristici Esențiale ale SGBD și SGBC - Pagina 31
Caracteristici Esențiale ale SGBD și SGBC - Pagina 32
Caracteristici Esențiale ale SGBD și SGBC - Pagina 33
Caracteristici Esențiale ale SGBD și SGBC - Pagina 34
Caracteristici Esențiale ale SGBD și SGBC - Pagina 35
Caracteristici Esențiale ale SGBD și SGBC - Pagina 36
Caracteristici Esențiale ale SGBD și SGBC - Pagina 37
Caracteristici Esențiale ale SGBD și SGBC - Pagina 38
Caracteristici Esențiale ale SGBD și SGBC - Pagina 39
Caracteristici Esențiale ale SGBD și SGBC - Pagina 40
Caracteristici Esențiale ale SGBD și SGBC - Pagina 41
Caracteristici Esențiale ale SGBD și SGBC - Pagina 42
Caracteristici Esențiale ale SGBD și SGBC - Pagina 43
Caracteristici Esențiale ale SGBD și SGBC - Pagina 44
Caracteristici Esențiale ale SGBD și SGBC - Pagina 45
Caracteristici Esențiale ale SGBD și SGBC - Pagina 46
Caracteristici Esențiale ale SGBD și SGBC - Pagina 47
Caracteristici Esențiale ale SGBD și SGBC - Pagina 48
Caracteristici Esențiale ale SGBD și SGBC - Pagina 49
Caracteristici Esențiale ale SGBD și SGBC - Pagina 50
Caracteristici Esențiale ale SGBD și SGBC - Pagina 51
Caracteristici Esențiale ale SGBD și SGBC - Pagina 52
Caracteristici Esențiale ale SGBD și SGBC - Pagina 53
Caracteristici Esențiale ale SGBD și SGBC - Pagina 54
Caracteristici Esențiale ale SGBD și SGBC - Pagina 55
Caracteristici Esențiale ale SGBD și SGBC - Pagina 56
Caracteristici Esențiale ale SGBD și SGBC - Pagina 57
Caracteristici Esențiale ale SGBD și SGBC - Pagina 58
Caracteristici Esențiale ale SGBD și SGBC - Pagina 59
Caracteristici Esențiale ale SGBD și SGBC - Pagina 60
Caracteristici Esențiale ale SGBD și SGBC - Pagina 61
Caracteristici Esențiale ale SGBD și SGBC - Pagina 62
Caracteristici Esențiale ale SGBD și SGBC - Pagina 63

Conținut arhivă zip

  • Caracteristici Esentiale ale SGBD si SGBC.doc

Alții au mai descărcat și

Procesarile Interogarilor in Sisteme de Gestiune a Bazelor de Date Distribuite

CAPITOLUL I NOTIUNI INTRODUCTIVE DESPRE BAZE DE DATE DISTRIBUITE GENERALITATI Procesarea cererilor este o aplicatie cu performante critice, în...

Securitatea Bazelor de Date

1. SECURITATEA DATELOR Securitatea este o preocupare constanta in proiectarea si dezvoltarea bazelor de date. In mod uzual, nu se pun probleme...

Anliza și Prelucrarea Imaginilor

Introducere Prelucrarea de imagini este un domeniu care îsi pastreaza dinamismul în ciuda trecerii anilor. Dezvoltarile tehnologice au facilitat...

Proiectarea unui Sistem Informatic pentru Gestiunea Stocurilor

Introducere Tema proiectului ”Proiecatarea unui sistem informatic pentru gestiunea stocurilor” este în strânsă legătură atât cu disciplina...

Gestiunea unei Biblioteci în SQL 2005

In vederea realizarii acestui proiect am folosit SQL Server 2005. Baza de date pe care am lucrat se numeste biblioteca Aplicatia realizeaza o...

Rețele de Calculatoare

Lucrarea Modele si solutii pentru administrarea reteleor de calculatoare contine o prezentare succinta a protocolului de administrare SNMP...

Proiectarea Unei Baze de Date

INTRODUCERE Sunt tot atat de multe cai de a utiliza sistemele informatice in afaceri cate tipuri de activitati care sunt desfasurate intr-o...

Sisteme de Gestiune a Bazelor de Date SGBD

INTRODUCERE Odata cu trecerea timpului si dezvoltarea informaticii, calculatorul s-a implicat in tot mai multe domenii de activitate, o...

Ai nevoie de altceva?