ALTE DOCUMENTE
|
|||||||
Structurile logice d 818r177i e stocare ale sistemului Oracle dicteaza modul īn care este utilizat spatiul fizic al bazei de date. Puteti manipula aceste structuri logice de stocare pentru a ajusta utilizarea spatiului de pe disc.
O structura logica de stocare este o unitate alocata a spatiului de stocare. Scopul ei principal este de a defini modul īn care va fi utilizat spatiul fizic de stocare a bazei de date. Este utilizata pentru a crea modelul de date relational pornind de la structura fizica a bazei de date.
Structurile logice d 818r177i e stocare includ spatii tabel, segmente, extinderi, blocuri si fisiere de date. Oracle aloca spatiul bazei de date pentru toate datele taze'i de date. Unitatile de stocare sunt blocurile de date, extinderile si segmentele. Aceste structuri pot fi manipulate prin operatii de baze de date.
Structurile logice d 818r177i e stocare dicteaza modul īn care va fi utilizat spatiul fizic al bazei de date. Obiectele schemei si relatiile dintre ele formeaza profilul relational al bazei de date. Aceasta configuratie logica a bazei de date are un impact formidabil asupra performantelor bazei de date. Prin urmare, este important sa īntelegeti ce sunt structurile logice de stocare si relatiile dintre ele.
O baza de date Oracle poseda atāt o structura logica, cāt si o structura fizica. Structura fizica contine fisierele de date, fisierele de control si fisierele jurnal curente. Prin separarea celor doua tipuri de structuri, fiecare poate'fi gestionata independent de cealalta fara a afecta accesul reciproc.
Atunci cānd sunt create structurile logice de stocare, spatiul este alocat īn baza de date conform unor criterii predefinite. Administratorul bazei de date are dreptul sa ignore sau sa reconfigureze criteriile bazei de date pentru a optimiza utilizarea spatiului discului. Pentru a sti sa alocati spatiu īn mod eficient si performant, trebuie sa īntelegeti cum este'utilizat spatiul bāzei de date.
Structura logica a unei baze de date Oracle este definita prin urmatoarele caracteristici:
Spatii tabel
Segmente
Extinderi
Blocuri de date
Figura 2.1 Ilustreaza relatia dintre structurile logice de stocare.
Atunci cānd o baza de date Oracle este creata de administratorul bazei de date, este īmpartita īn unitati logice multiple numite spatii-tabel. Datele bazei de date sunt stocate logic īn spatiul-tabel, iar fizic sunt stocate īn fisierele de date care sunt asociate cu spatiul-tabel.
Īn afara de stocarea logica a datelor, administratorul bazei de date poate folosi spatii-tabel pentru a realiza urmatoarele:
Figura 2.1. Ierarhia structurilor logice de stocare. |
|
Controlul consumarii spatiului fizic de pe disc de catre baza de date
Alocarea anumitor cote de disc utilizatorilor individuali
Stabileste repartitia stocarii datelor īntre dispozitive fizice multiple de stocare
Atunci cānd este creat un spatiu-tabel, sunt create automat spatiul-tabel System si fisierele de date. Spatiul-tabel System contine īntregul dictionar de date al bazei de date. Se recomanda sa fie creat cel putin un spatiu-tabel suplimentar pentru a pastra informatiile dictionarului de sistem separat fata de date.
Utilizarea spatiilor-tabel multiple asigura flexibilitate īn executarea operatiilor asupra bazei de date. Printre avantajele utilizarii spatiilor-tabel multiple se numara urmatoarele:
Separarea datelor de sistem fata de datele utilizatorului
Permite separarea aplicatiilor īntre ele
Posibilitatea dezactivarii anumitor spatii-tabel individuale si mentinerea celorlalte active
Posibilitatea de a stoca spatii-tabel tabel diferite pe unitati de disc distincte īn vederea īmbunatatirii performantelor si reducerii conflictelor de acces la date
Nu trebuie sa creati mai multe spatii-tabel decāt strictul necesar. Este recomandabil sa aveti cāt mai putine spatii-tabel. In fiecare spatiu-tabel, creati numarul minim posibil de fisiere de date. Aceste fisiere de date trebuie sa fie cāt mai mari posibil. Daca trebuie sa mariti dimensiunea unui spatiu-tabel, adaugati mai degraba unul sau doua fisiere mari de date decāt mai multe mai mici. Motivul principal pentru aceasta abordare putin-si-bun are īn vedere faptul ca majoritatea sistemelor de operare au o limita maxima īn ceea ce priveste numarul maxim de fisiere care pot fi deschise la un moment dat. Aceste limite afecteaza direct numarul de spatii-tabel care pot fi simultan active.
Spatiul-tabel System contine de asemenea segmente de revenire si unitati de program PL/SQL cum ar fi functii procedura, declansatori si pachete. 'Daca pentru o anumita baza de date este creata o asemenea unitate PL/SQL, administratorul bazei de date trebuie sa aiba īn vedere necesitatile de spatiu aferente. Prin urmare, administratorul bazei de date va aloca mai mult spatiu pentru baza de date.
Spatiul-tabel System trebuie sa fie īntotdeauna pastrat activ deoarece Oracle trebuie sa aiba oricānd acces la dictionarul de date.
Un spatiu-tabel Oracle este pastrat de obicei activ (online) astfel īncāt datele pe care le contine sa fie accesibile tuturor utilizatorilor bazei de date. Administratorul bazei de date poate sa dezactiveze spatiul-tabel (offline) pentru oricare dintre urmatoarele motive:
Pentru a efectua operatiuni de īntretinere sau copii de siguranta (backup) ale bazei de date
Pentru a interzice accesul la un grup de tabele īn timpul actualizarii sau modificarii unei aplicatii
Pentru a interzice accesul la o portiune a bazei de date īn timp ce restul bazei de date ramāne activa (online)
Oracle īmpiedica executarea instructiunilor SQL care fac referire la spatii-tabel dezactivate. Orice tranzactie SQL activa care face referire la spatii-tabel dezactivate va fi finalizata normal. Integritatea datelor se pastreaza īn segmentele de revenire (rollback segments) pentru aceste segmente SQL active.
Un spatiu-tabel nu poate fi dezactivat daca exista un segment de revenire activ care face referire la el. Segmentul de revenire trebuie rezolvat īnainte ca spatiul-tabel sa poata fi trecut īn stare inactiva.
Un spatiu-tabel dezactivat nu poate fi citit sau manipulat de nici o alta aplicatie sau utilitate alta decāt Oracle.
Fiecare spatiu-tabel contine cel putin un fisier fizic de date. Fisierul de date asociat cu un spatiii-tabel contine datele pentru spatiul-tabel respectiv. Fisierele de date sunt asociate cu un singur spatiu-tabel si o singura baza de date.
Fisierul de date initial al fiecarei baze de date este destinat pastrarii spatiului-tabel System. Acest fisier este necesar pentru pastrarea dictionarului de date si a segmentului de revenire si trebuie sa aiba o dimensiune initiala de cel putin 2KB. Pe masura ce dimensiunea bazei de date creste, puteti adauga spatiului-tabel fisiere de date suplimentare, īn general, ideal este sa adaugati mai degraba putine fisiere de date de dimensiuni mari decāt mai multe fisiere de date de dimensiuni mai mici.
Spatiul-tabel si fisierul de date asociat sunt goale īn momentul īn care sunt create. Cu toate acestea, ele poseda spatiu alocat īn vederea pastrarii datelor viitoarei baze de date. īn vederea pastrarii acestor date, īn spatiul-tabel sunt create segmente de date. Atunci cānd este creat un segment īntr-un spatiu-tabel sau cānd dimensiunea acestuia creste, programul Oracle utilizeaza spatiul liber din fisierul de date asociat pentru a aloca extinderi pentru segmentul respectiv. Remarcati faptul ca un obiect logic de stocare nu corespunde unui anumit fisier de date. īn schimb, un fisier de date este depozitarul datelor oricarui obiect dintr-un anumit spatiu-tabel.
|