Sunteți pe pagina 1din 83

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Evolutia bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

1. Notiuni generale
Baze de date; depozit de date
SGBD , dictionarul datelor
sistem de baze de date
administratorul de date
administratorul bazei de date
structura unui SGBD.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Baza de date
= un ansamblu structurat de date coerente, fr
redundan inutil, astfel nct acestea pot fi prelucrate
eficient de mai muli utilizatori ntr-un mod concurent
= o colecie de date persistente, care sunt folosite de ctre
sistemele de aplicaii ale unei anumite ntreprinderi

dou clase mari de date:


BD operationale date operaionale (necesare pt.
aplicaiile operaionale (care reflect funcionalitatea
zilnic a ntreprinderii)
depozitul de date informatii de sinteza (necesare
pt. susinerea procesului decizional).

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Datele din baza de date


persistente: dup ce au fost acceptate de ctre SGBD
pentru introducerea n BD, ele pot fi terse din BD numai
printr-o cerere explicit adresat SGBD
integrate: BD consta din unificarea mai multor fisiere
partajate: BD poate fi utilizata concurent de mai multi
utilizatori
suporta prelucrari frecvente, de complexitate redusa =>
Aplicaiile de baze de date:
in principal: operaii de memorare i regsire efectuate
asupra unor volume mari de date, in scopul obtinerii de
informatii din BD
secundar: operaii de prelucrare a datelor: introducere,
actualizare, stergere.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Sistem de gestiune a bazelor de date (SGBD


Data Base Management System)
= un produs software care asigur interaciunea cu o BD,
permind definirea, consultarea i actualizarea datelor din BD

Dicionarul datelor = catalog de sistem =


= conine date despre date,
= furnizeaz descrierea tuturor obiectelor unei BD (starea
obiectelor, constrngeri de securitate i de integritate,
informaii despre utilizatori)

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Sistem de baze de date


= consta din:
1. BD propriu-zis (n care se memoreaz datele)
2. SGBD (gestionarea i prelucrarea complex a datelor)
3. dicionarul BD (metabaza de date: informaii despre date,
structura acestora, statistici, documentaie)
4. mijloace hardware (comune sau specializate);
5. reglementri administrative destinate bunei funcionri a
sistemului
6. personalul implicat:
administratori de date i baze de date,
proiectani (designeri) de baze de date,
programatori de aplicaii,
utilizatori finali.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Administratorul de date (DA Data Administrator)


= un manager care stabileste:
care sunt datele care trebuie stocate n baza de date;
regulile de ntreinere i de tratare a acestor date (ex. o anumit
politic de securitate a datelor)

Administratorul bazei de date (DBADatabase Administr.)


= o persoan sau un grup de persoane ce rspund de ansamblul
activitilor legate de BD (creeaz baza de date real, implementeaz
elementele tehnice de control, asigura funcionarea sistemului la
performane adecvate, monitorizeaza performanele BD,furnizeaz
diverse servicii tehnice etc.)
= este responsabil cu implementarea deciziilor DA i cu controlul
general al sistemului, la nivel tehnic
=> are 4 mari categorii de atribuii:
de proiectare,
administrative,
operative,
de coordonare.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Proiectanii de BD:
(i) cei care abordeaz nivelul logic:
proiecteaz conceptual baza de date (independent de
programele de aplicatii si limbajele de programare)
(ii) cei care abordeaz nivelul fizic:
aleg modul de implementare fizica a modelului
conceptual

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Programatorii de aplicaii:
scriu programele aplicaie ce confer funcionalitatea
cerut de utilizatorii finali
utilizeaza limbaje de programare de nivel inalt (C++,
Java, PL/SQL etc.).

Utilizatorii finali:
acceseaz interactiv baza de date
pot fi:
utilizatori simpli
utilizatori sofisticai

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Structura unui SGBD:


complexa; dinamica; minimum 5 clase de module:
1. programe de gestiune a bazei de date (PGBD):
realizeaz accesul fizic la date ca urmare a unei comenzi;

2. module pentru tratarea LDD


permit traducerea unor informaii despre date n obiecte ce pot fi
apoi exploatate n manier procedural / neprocedural;

3. module pentru tratarea LMD (interpretativ, compilativ,


generare de programe)
permit utilizatorilor inserarea, tergerea, reactualizarea sau
consultarea informaiei dintr-o baz de date;

4. module utilitare
asigur ntreinerea, prelucrarea, exploatarea corect i uoar a
bazei de date;

5. module de control
permit controlul programelor de aplicaie,
asigurarea confidenialitii i integritii datelor,
rezolvarea unor probleme de concuren, r
ecuperarea informaiei n cazul unor avarii sau defeciuni
hardware sau software etc.

10

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Modul de lucru al SGBD la nivel conceptual:


1. utilizatorul lanseaz o cerere de acces
2. SGBD accept cererea i o analizeaz
3. SGBD inspecteaz pe rnd
schema intern corespunzatoare utilizatorului
schema conceptual
definiia structurii de stocare
corespondenele
4. SGBD execut operaiile necesare n baza de date stocat, i.e.
modulele PGBD asigur accesul fizic la date:
gsesc descrierea datelor implicate n comand
identific datele i tipul acestora
identific informaii ce permit accesul la structurile fizice de stocare
(fiiere, volume etc.)
verific dac datele sunt disponibile
extrag datele i fac conversiile
plaseaz datele n spaiul de memorie al utilizatorului
transmit informaii de control necesare execuiei comenzii, n spaiul
de memorie al utilizatorului
11
transfer controlul programului de aplicaie.

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Evolutia bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

12

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Cele 4 niveluri de abstractizare i de percepie a


datelor intr-o BD:

extern

logic

conceptual

intern

aceste nivele reprezinta numai


virtualizari ale datelor care exista
doar la nivelul intern

nivelul la care datele


exista efectiv

=> arhitectura pe 3 niveluri a BD si existenta unor


corespondente intre acestea.

13

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Nivelul extern (modelul extern, subschema, vizualizarea)

reprezint viziunea utilizatorului final asupra datelor

permite asigurarea unui nivel de securitate a datelor: un utilizator va accesa


doar datele descrise n schema sa extern
Nivelul logic (una din schemele logice posibile ale datelor)

reprezint viziunea programatorului de aplicaie asupra datelor;


Nivelul conceptual (schema conceptual a datelor: articol, nregistrare, zon)

este nivelul central

reprezint viziunea programatorilor de sistem asupra datelor

corespunde structurii semantice a datelor fr implementarea pe calculator


Nivelul intern (schema fizic a datelor: bit, octet, adres)

permite descrierea datelor unei BD sub forma n care sunt stocate n memoria
calculatorului
sunt definite fiierele care conin aceste date, articolele din fiiere, cile de
acces la aceste articole etc.
14

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Observatie
La nivel conceptual sau intern:
schemele respective descriu in mod unic o baz de date
La nivel extern:
schemele reprezint o descriere a unei pri a bazei de
date ce corespunde viziunii unui program sau unui utilizator
=>Pentru o BD particular exist:
1! schem intern,
1! schem conceptual
mai multe scheme externe.

15

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Avantajele oferite de arhitectura pe nivele a sistemelor de BD:

independena datelor:
fizic:
modificarea schemei fizice a datelor nu implica
modificarea schemei conceptuale si a schemei logice i nici
a programelor de aplicaie

logic:
modificarea schemei conceptuale a datelor nu implica
modificarea schemei logice i a programelor de aplicaie
se creaza fiecrui utilizator iluzia c este singurul
beneficiar al unor date pe care, n realitate, le folosete n
comun cu ali utilizatori;

independena fa de strategiile de acces:


permite programului s precizeze
data pe care dorete s o acceseze,
dar nu modul cum acceseaz aceast dat
SGBD-ul va stabili drumul optim de acces la date.

16

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

in sistemele de baze de date, funciile de declarare i de


prelucrare a datelor sunt realizate cu ajutorul unor limbaje diferite,
numite limbaje pentru baze de date:
LDD
LMD
LCT
LCD;
Limbajele universale si gestionarea unei BD:
Oracle este dotat cu precompilatoare (C/C++, Pascal, ADA,
Cobol, PL/1, Fortran
-> incorporarea de instruciuni SQL sau blocuri PL/SQL n
programe scrise n alte limbaje, de nivel nalt, numite limbaje
gazd.
17

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Arhitectura funcional de referin


propus de grupul de lucru ANSI/X3/SPARC
este axat pe dicionarul datelor i cuprinde dou pri:
1. prima parte: permite descrierea datelor (compoziia
dicionarului datelor)
2. a doua parte: permite prelucrarea datelor (interogarea i
reactualizarea bazei de date)
in fiecare parte se regsesc cele trei niveluri: intern,
conceptual i extern (nu sunt neaprat distincte);
interfeele numerotate din Figura 1.1, ce descriu arhitectura
de referin a unui SGBD, corespund urmtoarelor transformri
(->S27):

18

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

SGBD si arhitectura ANSI/SPARC


SGBD dispune de urmatoarele procesoare:

dicionarul de date:
prelucreaza comenzile de definire a schemei i comenzile de definire a
vizualizrilor;

analizorul:
analizeaza sintactic si semantic comenzile de definire a schemei i a
vizualizrilor precum i cererile de prelucrare,
o cerere n format intern care face referin la o vizualizare este tradus n
una sau mai multe cereri care fac referin la obiecte ce exist n baza de date
(modificarea cererilor);

translatorul:
modifica cererile,
asigur controlul drepturilor de acces,
asigura controlul integritii n cazul reactualizrilor;

optimizorul:
elaboreaz un plan de acces optim pentru a trata cererea,
descompune cererea n operaii de acces elementare i alege o ordine de
execuie optimal,
evalueaz costul planului de acces naintea execuiei sale;

executorul:
executa planul de acces elaborat de optimizor,
asigura controlul concurenei.

19

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Evolutia bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

20

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

Baze de date prerelationale:

4. Clasificarea bazelor de
date

ierarhice
retea

Baze de date relationale


Baze de date orientate obiect
Baze de date relationale orientate obiect
Baze de date deductive
Baze de date distribuite
Calculatoare i maini baze de date
Multibaze de date
Baze de date cu suport decizional
Data warehouse.
21

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Evolutia bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

22

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Criterii de clasificare a sistemelor de bazelor


de date:
1. modelul de date
2. numarul de utilizatori
3. numarul de calculatoare pe care sunt stocate BD i
SGBD
4. modul de functionare
5. implementarea sistemului de baze de date.

23

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

1. Clasificarea dupa modelul de date:

Baze de date prerelationale:

ierarhice
retea,

Baze de date relationale,


Baze de date orientate obiect,
Baze de date relationale orientate obiect.

24

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

2. Clasificarea dupa numarul de utilizatori:

sisteme multiutilizator:

cele mai frecvente

permit accesul concurent al mai multor


utilizatori la aceeasi BD;
sisteme monoutilizator:

destul de rare

permit accesul unui singur utilizator.


25

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

3. Clasificarea dupa numarul de statii pe care


este stocata BD:
centralizate:

datele si SGBD sunt stocate pe o singura


statie (calculator)
distribuite:
i datele si SGBD sunt distribuite pe mai
multe calculatoare interconectate printr-o
retea de comunicatie.

26

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

4. Clasificarea dupa modul de functionare:


teleprocesarea
arhitectura tradiional: 1! calculator cu 1! unitate CPU i
un numar de terminale, incapabile s funcioneze singure;
arhitectura fiier-server
procesarea este distribuit n reea (de obicei LAN)
arhitectura cuprinde fiierele cerute de aplicaii i SGBD-ul
aplicaiile i funciile SGBD sunt executate pe fiecare staie
de lucru, solicitnd atunci cnd este nevoie fiiere de pe
serverul de fiiere;
arhitectura client-server
exist
un proces client, care necesit resurse i
un proces server, care ofer resurse.

27

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Arhitectura client-server:
1. clientul (front-end) emite o cerere SQL
2. cererea este executata pe server (back-end)
3. serverul trimite clientului ca rspuns ansamblul
nregistrrilor rezultat;

Clientul:

administreaz interfaa cu utilizatorul i logica aplicaiei,


accept i verific sintaxa intrrilor utilizatorilor,
proceseaz aplicaiile,
genereaz cererile pentru BD i le trimite serverului,
transmite rspunsul napoi la utilizator.

28

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Arhitectura client-server: (cont.)

Serverul:
primete i proceseaz cererile clienilor adresate BD,
verific autorizarea,
efectueaz procesarea interogare-reactualizare,
garanteaz respectarea constrngerilor de integritate,
realizeaz optimizarea interogrilor,
asigur controlul concurenei dintre mai multi clieni
care se ignor (mecanisme de blocare),
trimite clientului rspunsul,
ntreine dicionarul datelor,
ofer acces simultan la baza de date,
asigur robusteea n cazul defeciunilor etc.
29

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Arhitectura client-server: (cont.)


Arhitectura tradiional client-server pe dou etaje (niveluri):
clientul prezinta datele ctre client,
serverul furnizeaza servicii ctre client;

Arhitectura client-server pe trei etaje presupune trei niveluri,


fiecare rulat, potenial, pe o platform diferit:
1. nivelul client:
interfaa cu utilizatorul,
este rulat pe calculatorul utilizatorului final;
2. nivelul server de aplicaie:
manevreaz logica aplicaiilor i prelucrrii datelor,
poate servi mai muli clieni (conectarea la celelalte dou
straturi se face prin reele locale LAN / WAN);
3. nivelul server de baze de date
validarea datelor,
accesarea bazei de date (stocheaz date necesare stratului
din mijloc).
30

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Arhitectura client-server: (cont.)


Arhitectura se potrivete natural mediului Web:
un browser Web client i
un server Web server de aplicaie.
Middleware =
= un strat, evident software, ntre aplicaia postului client i
serverul de baze de date
constituit din:
o interfa de programare a aplicaiilor (API - Application
Programming Interface) i
un protocol de reea;
API descrie tipul de interaciune dintre o aplicaie client i un
server la distan, via un protocol de comunicaie i de formatare
a datelor

scopul existenei interfeei de programare a aplicaiilor este


31
de a oferi o interfa unic mai multor servere de baze de date.

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5. Clasificarea dupa modul de implementare a


sistemului de baze de date:
se combina ultimele 3 criterii : numarul de utilizatori, modul de
stocare a BD i SGBD i modul de functionare a sistemului de
baze de date:
I. sisteme client-server centralizate de tip monouser
II. sisteme client-server centralizate de tip multiuser
III. sisteme client-server distribuite de tip multiuser.

32

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

I. Sisteme client-server centralizate


de tip monouser
BD i SGBD sunt stocate pe acelasi
server care raspunde cererilor unui singur
client care acceseaza BD .

33

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

II. Sisteme client-server centralizate de tip multiuser

BD i SGBD sunt stocate pe acelasi server care


raspunde cererilor mai multor clienti care acceseaza BD ;
aplicatiile client sunt executate pe statii diferite (=> cu
puteri de calcul inferioare serverului), conectate printr-o
retea de comunicatie cu calculatorul pe care ruleaza
serverul.

34

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

III. Sisteme client-server distribuite de tip multiuser


O BD distribuita =
= o colectie de date care, din punct de vedere logic,
apartin aceluiasi sistem dar care, din punct de vedere fizic, pot
sa fie memorate pe mai multe statii de calcul conectate printr-o
retea de comunicatie
SGBD distribuit =
= sistemul software care gestioneaza o astfel de BD
Caracteristici:
cresterea capacitatii destocare i prelucrare
cresterea complexitatii
Principala cerinta (partial indeplinita):
transparenta = capacitatea unui sistem distribuit de a
ascunde detaliile de implementare, astfel nct utilizatorii sa
poata accesa datele pe baza unui model de nivel nalt, fara a fi
necesara cunoasterea exacta a modului de amplasare,
replicare sau comunicare a datelor.
35

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

III. Sisteme client-server distribuite de tip multiuser (cont.)

BD i SGBD sunt distribuite pe mai multe statii conectate


printr-o retea de comunicatie
aplicatiile client sunt executate pe statii diferite , conectate
printr-o retea de comunicatie cu calculatoarele (interconectate) pe
care ruleaza serverul.
36

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Evolutia bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

37

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Baze de date

5. Arhitectura sistemului Oracle


5.1. Structura bazei de date
5.2. Dicionarul datelor
5.3. Arhitectura intern a sistemului Oracle
5.4. Prelucrarea bazei de date

38

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Oracle (v9i )
= SGBD relational OO
= primul SGBD care a oferit o infrastructur software complet
pentru Internet RAD: Oracle Enterprise Edition =
Oracle Database,
Oracle Application Server,
Oracle Developer Suite;
Oracle Developer Suite

HTTP

Client HTTP
Nivel 1

Oracle Application
Server
Nivel 2

Oracle Database
Nivel 3

Arhitectura three-tier a sistemului Oracle

39

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Oracle Database:
Serverul de baze de date: funcionaliti pentru
aplicaiile de baze de date tradiionale,
aplicaiile Internet:
administrarea completa a unei cantitati mari de date n
condiiile unui mediu multiuser,
asigurarea accesul concurenial la acelai set de date,
previnirea accesului neautorizat la date,
recuperarea datelor.
40

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Oracle Application Server (Oracle AS)


1. acces ctre orice BD:
Interfata
ODBC
accesul nativ la bazele Oracle
(prin extensia Oracle Call Interface (OCI)),
accesul la alte tipuri de baze
(prin extensia Open Database Conectivity (ODBC)) ;
2. infrastructur complet pentru instalarea, dezvoltarea i
administrarea aplicaiilor de tip e-business i Internet complet
independente de dispozitivul de pe care sunt accesate
i.e. ofera suport integral pentru:
tehnologia Java (J2EE 1.3) i
standardele actuale pentru servicii Web (XML, XMI, SOAP,
UDDI, WSDL, WebDAV);
3. asigur confidenialitatea informaiilor transmise prin reea:
suporturi de criptare, autentificare i autorizare.
41

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Oracle Developer Suite (Oracle DS)


extinde infrastructura format din Oracle AS i Oracle
Database (in special in directia dezvoltarii de aplicaii Internet ),
reprezint un mediu integrat de dezvoltare (Integrated
Development Environment=IDE): modelare, dezvoltare,
codificare, depanare, optimizare, instalare de aplicatii,

Clasa de utilitare Oracle DS include:


componente pentru crearea de aplicaii (JDeveloper,
Designer, Forms Developer, Software Configuration Manager)
componente de tip Business Intelligence (Reports
Developer, Business Intelligence Beans, Warehouse Builder),
componente pentru dezvoltarea de aplicaii complexe i.e.
precompilatoarele Pro (C/C++, PL1, COBOL, ADA, FORTRAN
i PASCAL) care permit ncorporarea de instruciuni SQL sau
blocuri PL/SQL n module scrise utiliznd alte limbaje de
programare (gazd); precompilatorul citete codul surs i
genereaz un fiier ce poate fi procesat de ctre compilatorul
42
limbajului respectiv).

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5. Arhitectura sistemului Oracle


5.1. Structura bazei de date
BD:
o structur logic i
o structur fizic;

Structura fizic a bazei de date Oracle:


A. fiiere de date (Datafiles),
B. fiiere de reluare (Redo Log Files),
C. fiiere de control (Control Files);
Structura logic a bazei de date Oracle:
a.
b.
c.
d.
e.

blocurile de date (data block),


extensiile (extent),
segmentele (segment),
spaiile tabel (tablespace),
obiectele schemei (schema object).
43

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

A. Fiierele de date
= fiiere fizice ale SO
stocheaz datele tuturor structurilor logice ale bazei;
alocarea unui fiier de date bazei Oracle: SO
terge informaiile nefolosite
acord autorizaii pentru fisier;
primul fiier de date creat: fisierul care stocheaz
dicionarul datelor.

44

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

B. Fiierele de reluare
= nregistreaz toate modificrile care
au loc asupra datelor bazei (indiferent dac au fost
permanentizate sau nu) i
nu au fost scrise nc n fiierele de date;
sunt specificate n momentul crerii sau modificrii bazei
sunt utilizate n manier circular (cele care au fost folosite n
ntregime, pot fi arhivate pn cnd sistemul le va reutiliza)

asigur protecia BD n cazul defeciunilor


o BD Oracle conine dou sau mai multe fiiere de reluare.

45

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

C. Fiierele de control
= fiiere binare de dimensiune redus, necesare pentru
pornirea i funcionarea bazei de date;
orice BD Oracle deine cel puin un fiier de control;
fiecare fiier de control
este asociat unei singure BD
conine informaii despre structura fizic a acesteia
este creat odat cu respectiva BD (Oracle permite
existena fiierelor de control multiplexate

46

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

C. Fiierele de control (cont.)


La pornirea unei instane Oracle:
sistemul folosete fiierul de control pentru:
a identifica baza i
a determina dac aceasta este n stare valid pentru
utilizare;
sunt identificate fiierele de reluare necesare execuiei
operaiilor bazei de date;
Fiierele de control reflect automat schimbrile (creare,
redenumire sau tergere) care au loc la nivelul fiierelor de date
sau de reluare;
Informaiile din fiierele de control pot fi modificate doar de
serverul Oracle;

47

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

reprezinta cele trei niveluri de granularitate


permit gestionarea dinamic a spaiului de
pe disc pe msura utilizrii bazei de date
nivelul cel mai fin de granularitate : blocul.

Structura logic a BD Oracle:


a)
b)
c)
d)
e)

blocurile de date (data block);


extensiile (extent);
segmentele (segment);
spaiile tabel (tablespace);
obiectele schemei (schema object).

tabele, vizualizri, vizualizri


materializate, secvene, uniti de
program, sinonime, indeci,
grupri, dimensiuni, legturi de
baze de date.
sunt structuri logice care refer
n mod direct datele bazei

permit
definirea logic a organizrii fizice a BD
efectuarea legturii dintre nivelul fizic i
nivelul logic al acesteia.
48

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

a) Blocuri de date
= unitati logice prin care sistemul administreaz spaiul de
stocare al fiierelor de date;
Blocul = cea mai mic unitate I/O folosit de baza de date,
= corespunztoare unui bloc fizic de octei de pe disc,
= dimensiunea sa: este definit n momentul crerii BD,
poate fi modificat ulterior,
este un multiplu al dimensiunii
blocurilor fizice de la nivelul SO;
Structura blocului de date Oracle:
un antet (header),
un spaiu liber (free space),
un spaiu pentru date (data space).

49

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

a) Blocuri de date (cont.)


Antetul conine
informaii generale referitoare la bloc
un catalog al tabelelor (table directory):
un catalog al liniilor (row directory):

Spaiul liber al blocului de date este alocat pentru inserarea de noi linii sau
actualizarea liniilor care necesit spaiu suplimentar.
Alegerea blocului n care va fi inserat o linie nou depinde de spaiul liber al
acestuia i de valorile parametrilor PCTFREE i PCTUSED.
ntr-un bloc, se pot introduce date atta timp ct dimensiunea spaiului liber
este mai mare dect limita fixat de parametrul PCTFREE. Sistemul Oracle va
considera acest bloc indisponibil pentru inserarea de noi linii, pn cnd
procentajul spaiului utilizat coboar sub valoarea dat de PCTUSED.
50

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

b) c) Extensia i segmentul
Extensia = unitate logica de alocare a spaiului BD,
= compus dintr-o mulime contigu de blocuri de
date (din acelai fiier de date);

Segmentul = unitate logica formata din una sau mai multe


extensii;
Iniial, segmentul are o singur extensie (initial extent).

51

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

b) c) Extensia i segmentul (cont.)


O extensie
este alocat atunci cnd este creat sau extins un segment,
este dezalocat (in general) cnd segmentul este suprimat sau
trunchiat;
Eliberarea unei extensii implic tergerea datelor existente n
blocurile de date alocate acesteia (ele vor fi reutilizate pentru
extensiile nou create);

52

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

b) c) Extensia i segmentul (cont.)


Segmentul
= corespunde unui singur obiect fizic stocat
= folosete blocuri de date care se gsesc n acelai spaiu
tabel;
Tipuri de segmente din BD Oracle :
segmente de date (data segment),
segmente index (index segment),
segmente temporare (temporary segment),
segmente de revenire (undo segment) etc.

53

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

b) c) Extensia i segmentul (cont.)


Segmentele de date
sunt definite atunci cnd este folosit comanda de creare a unui tabel
sau a unei grupri
un singur segment de date este folosit pentru stocarea tuturor datelor
dintr-un tabel nepartiionat care nu face parte din nicio grupare, dintr-o
partiie a unui tabel partiionat sau dintr-o grupare de tabele
Segmentele index
sunt folosite pentru a stoca datele unui index
fiecare index nepartiionat este coninut ntr-un singur segment. n
cazul indecilor partiionai, fiecrei partiii i se asociaz cte un segment
index
Segmentele temporare
sunt utilizate de sistem pentru analiza i execuia comenzilor SQL
care necesit un spaiu temporar de stocare
sistemul aloc n mod automat segmente temporare atunci cnd este
necesar i le suprim dup execuia comenzii SQL
segmentele temporare sunt alocate n majoritatea cazurilor de sortare
(atunci cnd operaia respectiv nu se poate face n memorie sau dac
54
folosirea indecilor nu presupune o soluie mai eficient).

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

b) c) Extensia i segmentul (cont.)


Segmentele de revenire

O BD conine unul sau mai multe segmente de revenire,


folosite pentru:
anularea aciunii tranzaciilor
asigurarea consistenei la citire,
efectuarea operaiile de recuperare a bazei de date;
Segmentele de revenire nu pot fi accesate de ctre
utilizatorii sau administratorii bazei de date
Ele pot fi scrise i citite doar de ctre sistem.

55

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

d) Spatiul tabel
= unitate logica de stocare formata din 1,2, segmente
grupeaza logic o mulime de obiecte:
fiecare obiect al BD are specificat un spaiu tabel n care
trebuie s fie creat ->
datele care alctuiesc obiectul sunt apoi stocate n fiierele
de date alocate spaiului tabel respectiv ->
un fiier de date poate fi alocat unui singur spaiu tabel;
fiecarui utilizator i se poate aloca explicit un spaiu tabel, n
care vor fi stocate toate obiectele create de el
alocarea se efectueaza automat
folosirea mai multor spaii tabel -> flexibilitate n utilizarea BD
BD = {spaii tabel}
Tipuri de spatiu tabel in BD Oracle:
spaiul tabel SYSTEM,
spaii tabel non-SYSTEM.

56

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

d) Spatiul tabel (cont.)


Spaiul tabel SYSTEM:
primul spaiu tabel creat
i se aloca automat (n timpul crerii BD) primul fiier de date,
conine:
dicionarul datelor, inclusiv unitile de program stocate,
segmentul de revenire SYSTEM;
Spaiile tabel non-SYSTEM:
permit administrarea flexibil a BD,
separ segmentele de revenire, segmentele temporare,
segmentele de date i segmentele index,
separ datele dinamice de cele statice,
controleaz spaiul alocat pentru obiectele utilizatorilor.
57

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

d) Spatiul tabel (cont.)


Relaia dintre baze de date, spaii tabel i fiiere de date
presupune c:
fiecare baz de date este mprit din punct de vedere logic
n unul sau mai multe spaii tabel;
unul sau mai multe fiiere de date sunt create explicit pentru
fiecare spaiu tabel, cu scopul de a stoca fizic datele din
structurile sale logice;
suma mrimilor tuturor fiierelor de date asociate unui spaiu
tabel reprezint capacitatea total de stocare a spaiului tabel;
suma capacitilor de stocare a spaiilor tabel ale unei baze de
date reprezint capacitatea total de stocare a bazei.

58

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

e) Schema
= mulimea obiectelor bazei de date, aflate n posesia unui
utilizator (fiecare utilizator deine o singur schem).
numele schemei este acelai cu numele utilizatorului
nu exist o coresponden biunivoc intre spaiile tabel i
schemele de obiecte
obiectele aceleiai scheme pot fi n spaii tabel diferite
un spaiu tabel poate conine obiecte din mai multe scheme
pentru a accesa un obiect din propria schem, utilizatorul
poate folosi doar numele acestuia
pentru referirea unui obiect din schema altui utilizator,
trebuie specificat att numele obiectului, ct i schema din
care face parte, prin folosirea notaiei
schema.obiect
59

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5. Arhitectura sistemului Oracle


5.2. Dictionarul datelor (catalogul de sistem)
= conine date despre date (metabaza de date) i.e.
informaii despre baza de date:

definiiile tuturor obiectelor din schemele bazei

cantitatea de spaiu alocat pentru obiectele schemelor

cantitatea de spaiu utilizat de acestea la momentul curent

valorile implicite ale coloanelor

constrngerile de integritate

numele utilizatorilor Oracle

privilegiile i role-urile acordate fiecrui utilizator

informaii de auditare etc.


60

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.2. Dictionarul datelor (cont.)


este generat automat la crearea BD;
este reactualizat de ctre serverul Oracle dup fiecare
comand LDD sau LCD;
coninutul su reflect imaginea bazei de date (structura fizic
i logic) la un moment dat;
din punct de vedere structural este compus:
tabele de baz ale dictionarului i
vizualizri publice asupra acestora;
=> vizibil i pt sistem i pt utilizatori.

61

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.2. Dictionarul datelor (cont.)


Tabelele de baz
stocheaz informaiile asociate BD,
sunt primele obiecte create;
Vizualizrile
decodific informaiile stocate n tabelele de baz i
le sintetizeaz pentru a fi disponibile utilizatorilor;

62

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.2. Dictionarul datelor (concl.)


este deinut de ctre utilizatorul SYS i se afl n spaiul tabel
SYSTEM;
sistemul poate accesa dicionarul datelor pentru a obine informaii
despre:

utilizatori,

obiecte,

structurile de stocare;

orice utilizator poate consulta dicionarul datelor pentru a afla


informaii despre baza de date (documentare sau administrare)
utilizatorii fr privilegii de administrare pot accesa doar vizualizrile
prefixate de USER_ sau ALL_

pentru a obine lista vizualizrilor disponibile se poate interoga


vizualizarea DICTIONARY care are sinonimul DICT

se utilizeaza instruciunea SELECT din SQL.


63

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5. Arhitectura sistemului Oracle


5.3. Arhitectura interna a sistemului Oracle
Observatie
Serverul Oracle = SGBD relaional OO
const
o baz de date Oracle
o instan, care const din:
o structur de memorie numit SGA (System Global Area)
procese background ,
pentru a putea accesa datele din BD, trebuie pornit o instan,
o instan poate fi asociat unei singure BD,
cnd este pornit BD:
se localizeaz structura SGA i
sunt lansate procesele background (DBWn, LGWR, CKPT,
SMON, PMON, Dnnn, ARCn, RECO, LMS, QMNn etc.).
dac unul dintre aceste procese se termin anormal,
atunci instana se oprete.
64

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.3. Arhitectura interna a sistemului Oracle (cont.)

65

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.3. Arhitectura interna a sistemului Oracle (cont.)


Sistemul Oracle este structurat pe trei nivele:

nivelul Procese: corespunde diverselor procese de sistem


care asigur gestiunea datelor
nivelul Memorie: const dintr-o mulime de zone tampon
alocate pentru a stoca date i anumite informaii de control
nivelul Fiiere: corespunde structurii (fizice) a BD i modului
n care sunt stocate datele.

66

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

Baze de date

5.3. Arhitectura interna a sistemului Oracle (cont.)


Structura memoriei si procesele Oracle

67

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.3. Arhitectura interna a sistemului Oracle (cont.)


Serverul Oracle poate folosi fiiere care nu fac parte din baza
de date; ele permit
configurarea instanei,
autentificarea utilizatorilor
recuperarea bazei de date;
Exemple:
fiierele de parole (password file) = fiiere binare folosite pentru
autentificarea utilizatorilor bazei de date
fiierul parametrilor de iniializare (parameter file) = principalul
mijloc de configurare a sistemului; este utilizat pentru definirea
caracteristicilor unei instane Oracle
fiierele arhived redo log = copii offline ale fiierelor de reluare,
folosite pentru recuperarea bazei de date n cazul defeciunilor
hardware
fiierele istorice (trace file i alert file) = conin toate mesajele,
erorile i evenimentele importante.
68

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor
procese user
procese Oracle

procese server
procese background
Arhitectura memoriei.

69

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor
Observatie
Pentru a accesa o instan a unei BD Oracle, se execut:
o aplicaie sau un utilitar Oracle (prin intermediul crora se
lanseaz comenzi SQL asupra bazei de ex. Recovery Manager,
Oracle Entreprise Manager, Oracle Forms)
un cod Oracle server (cu ajutorul cruia sunt interpretate i
procesate comenzile SQL);

70

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor
Un proces = un mecanism al sistemului de exploatare care
permite executarea unor operaii de calcul sau operaii I/O;
Fiecrui proces i se aloc o zon privat de memorie
Serverul Oracle : dou tipuri generale de procese:
procese user: execut aplicaiile,
procese Oracle (procese server i background): asigur
gestiunea informaiilor dintr-o baz de date.
71

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor (cont.)
Un proces user
creat de sistemul Oracle pentru:
a executa codul unei aplicaii program sau
ca urmare a lansrii unui utilitar Oracle
se execut pe maina client
ncepe i se termin odat cu aplicaia utilizatorului resp.;
nu interacioneaz n mod direct cu serverul Oracle ci
genereaz mesaje printr-un program interfa (UPI = User
Program Interface).

72

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor (cont.)
Un proces Oracle
= execut instruciunile interne ale serverului Oracle
este invocat de alte procese pentru a ndeplini anumite
operaii n favoarea acestora;
dou tipuri de procese Oracle:
procese server (server process),
procese de fundal (background process).
73

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura proceselor (cont.)

Procesele Oracle
Un proces server
interacioneaz cu procesele user ,
comunic n mod direct cu serverul Oracle pentru a
transmite cererile acestora printr-un program de interfata
Oracle (OPI = Oracle Program Interface),

este lansat cnd utilizatorul iniiaz o sesiune.

74

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)

Arhitectura proceselor (cont.)


Procesele Oracle
Un proces de fundal (background process)
reuneste funciile executate pentru fiecare proces user
execut operaiile I/O asincrone,
monitorizeaz alte procese Oracle;
folosit pentru a mbunti performanele unui sistem
multiprocesor, n prezena mai multor utilizatori,
serverul Oracle creeaz cte un set de procese
background pentru fiecare instan;

75

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura memoriei
structural, memoria este compus din:
o zona de memorie partajata = zona global sistem
(SGA = System Global Area),
o zona de memorie nepartajata = zona global program
(PGA = Program Global Area);
toate structurile de memorie se gsesc n memoria central,
sunt create i utilizate pentru a depozita:
codul programelor executate,
datele necesare n timpul execuiei acestora,
datele folosite n comun de mai multe procese Oracle,
informaiile referitoare la sesiunile curente etc.
76

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)

Arhitectura memoriei (cont.)


SGA = System Global Area = zona globala sistem =
= este un grup de structuri partajate de memorie care conin
date i informaii de control relative la BD i la o instan;
fiecare instan are propria sa SGA care:
este alocata atunci cnd este pornita instana
este eliberata n momentul opririi instantei;
datele coninute n SGA sunt folosite n comun de ctre
utilizatorii conectai la instan,
informaiile coninute n SGA sunt repartizate n diferite
zone (database buffer cache, redo log buffer, shared pool
etc.), care sunt alocate la pornirea instanei;
SGA fix
= o zona special a SGA folosit pentru stocarea informaiilor
despre starea bazei de date i a instanei
informaiile sunt accesate de ctre procesele background,
,77
nu poate conine date ale utilizatorilor.

Curs 6 : Baze de date Oracle: Generalitati

5.3. Arhitectura interna a sistemului Oracle


Arhitectura proceselor
procese user
procese Oracle
procese server
procese background
Arhitectura memoriei (SGA; PGA).

5.3. Arhitectura interna a sistemului Oracle (cont.)


Arhitectura memoriei (cont.)
PGA = Program Global Area = zona globala program =
= zon de memorie care conine date i informaii de control
relative la un singur proces Oracle
poate fi folosit de un singur proces,
este alocat la crearea procesului,
este dezalocat la terminarea acestuia,
este format - in general din:
o zon privat SQL (conine date - de ex., informaii de
legtur i structuri de memorie necesare rulrii comenzilor)
o zon de memorie alocat sesiunii,
zone de lucru SQL.

78

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5. Arhitectura sistemului Oracle


5.4. Prelucrarea bazei de date
Operatii esentiale:
crearea BD,

inchiderea BD,
[izolarea BD];
O BD Oracle = disponibil utilizatorilor din momentul
deschiderii i pn la nchiderea ei
Un utilizator Oracle = o persoan
care posed un cont nregistrat n serverul Oracle i

pentru care au fost acordate privilegii corespunztoare de


acces la date.
79

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.4. Prelucrarea bazei de date (cont.)


Crearea bazei de date =
definirea i
implementarea celor 2 tipuri de structuri (logic i fizic)
ce compun baza;
Modalitile de creare a unei BD:
n mod automat, la instalarea lui ODBServer, utiliznd:
Oracle Universal Installer
comanda CREATE DATABASE din SQL
instrumentul Oracle Database Configuration Assistant;
n timpul migrrii de la o versiune anterioar a bazei deja
existente, folosind Oracle Data Migration Assistant etc.
80

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.4. Prelucrarea bazei de date (cont.)


Inchiderea bazei de date
se folosete comanda SHUTDOWN (este necesar conectarea ca
SYSDBA sau SYSOPER).
se poate realiza n mai multe moduri:

normal,
imediat,
tranzacional sau
renunare (abort);

procesul de nchidere a unei BD presupune trei etape:


nchiderea BD:
datele din SGA sunt nregistrate n fiierele de date i n cele de
reluare,
aceste fisiere sunt inchise,
fiierele de control rmn deschise;

demontarea BD:
BD este disociat de instan,
sunt nchise fiierele de control;

oprirea instanei:
se elibereaz memoria utilizat de SGA,
se opresc toate procesele Oracle,
se nchid fiierele istorice.

81

Curs 6 : Baze de date Oracle: Generalitati

1. Notiuni generale 3. Evolutia bazelor de date

5. Arhitectura sistem. Oracle

2. Arhitectura
SGBD

6. Grid computing i SOA in


Oracle.

4. Clasificarea bazelor de
date

5.4. Prelucrarea bazei de date (cont.)


Izolarea bazei de date
= operatie optionala executata de DBA (de ex.: cand trebuie sa
izoleze anumite aciuni pe care trebuie sa le efectueze de actiunile
concurente realizate de utilizatorii obinuii (tranzacii, interogri sau
comenzi PL/SQL): modificarea structurii unui tabel poate fi impune
interzicerea tranzaciilor concurente care acceseaz datele acelui
tabel)

presupune nchiderea acesteia i redeschiderea sa n mod


restrictiv (STARTUP RESTRICT)
in cazul sistemelor care trebuie s funcioneze continuu,
oprirea temporar a BD poate cauza probleme importante.
s-a introdus posibilitatea de izolare a BD prin trecerea sa
n stare de repaus, fr a deconecta utilizatorii.
82

Curs 6 : Baze de date Oracle: Generalitati

Baze de date

1. Notiuni generale
2. Arhitectura SGBD

3. Clasificarea bazelor de date


4. Clasificarea bazelor de date
5. Arhitectura sistemului Oracle
6. Grid computing i SOA in Oracle.

83

S-ar putea să vă placă și