Sunteți pe pagina 1din 2

6 – Indexare pag 1/3

Ce este indexarea?
 Indexarea este o metodă de sporire a vitezei
6. Indexare de acces la datele din baza de date, adică:
- la regăsirea prin interogare;
- la sortare.
 Conceptul este legat de aspecte privind
Ce este indexarea? organizarea la nivel fizic a datelor.
Metode de acces la date  Pentru a-l explica, trebuie punctate câteva
Indexarea: avantaje şi dezavantaje momente din istoria evoluţiei calculatoarelor.
Indexarea în bazele de date MS Access
 Vom face şi unele analogii cu situaţii care nu
au (aparent) nici o legătură cu calculatoarele.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
1 2

Despre interogare, din nou Accesul secvenţial


 Pentru a extrage informaţii din baza de date,
utilizatorul face interogări (de exemplu, utilizând  Accesul secvenţial a fost prima modalitate de
tehnica QBE). Înregistrările căutate sunt descrise regăsire a informaţiilor stocate în fişiere (înainte
prin enunţarea unor criterii de interogare. de apariţia bazelor de date) şi a fost folosit în
 Exemplu: se cere lista studenţilor care locuiesc în perioada în care principalul mijloc de stocare era
căminul C2 la camera 40. În urma aplicării cererii banda magnetică. IBM a numit organizarea
de interogare, SGBD-ul va investiga tabela
STUDENŢI. secvenţială a fişierelor şi metoda de acces
 Căutarea se va face secvenţial, adică asociată SAM (Sequential Access Method).
înregistrare cu înregistrare, de la prima până la  În metoda de acces secvenţial, fişierul este
ultima. Se vor reţine, pentru afişare, înregistrările parcurs înregistrare cu înregistrare până la
care au Camin = “C2” şi Camera = 40.
găsirea celei/celor căutate.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
3 4

Alte metode de acces la fişiere Accesul secvenţial indexat


 Odată cu apariţia discurilor magnetice, al căror  Organizarea secvenţială indexată a avut cel la
principiu de funcţionare permitea poziţionarea mare succes. Motivul este că această
capetelor de citire/scriere direct în locul în care organizare permite atât accesul secvenţial la
se află înregistrarea dorită, s-au dezvoltat şi alte date, cât şi accesul direct.
tehnici de acces logic la informaţiile dintr-un fişier.  IBM a notat această metodă ISAM (Indexed
 Aceste modalităţi de organizare a fişierelor şi Sequential Access Method).
acces la date au fost:
 Tehnica ISAM a fost implementată şi în cadrul
- organizarea directă (Random access) şi
- organizarea secvenţială indexată SGBD-urilor relaţionale pentru a realiza o
(Indexed sequential access). accesare mai eficientă a datelor.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
5 6

Funcţionarea Exemplu din afara IT:


accesului secvenţial indexat utilizarea unei cărţi cu conţinut tehnic
 Dacă acea carte nu ar avea Cuprins, atunci, pentru
 În cadrul ISAM, accesul secvenţial se realizează
a găsi un anumit paragraf, ar trebui parcurs volumul
prin parcurgerea tabelei înregistrare cu pagină cu pagină, secvenţial, până la locul căutat.
înregistrare (în maniera cunoscută). Asta ar consuma mult timp.
 Accesul direct la înregistrarea care interesează se  Cartea are însă un Cuprins care este o tabelă cu
face prin intermediul unei tabele suplimentare, două coloane: pe o coloană se află titlurile
care se numeşte index. capitolelor şi paragrafelor, iar pe altă coloană sunt
 Căutarea înregistrărilor se face după criterii de paginile la care trebuie mers pentru a le găsi.
interogare. Un criteriu de interogare este ataşat  Cuprinsul are rol de index: cititorul îl parcurge
unui anumit câmp. Deci, un astfel de câmp va căutând numele paragrafului, ia numărul paginii (din
coloana alăturată), apoi merge direct la pagina
trebui indexat pentru a mări viteza de căutare.
respectivă. Regăsirea se va face mult mai rapid.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
7 M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi 8
6 – Indexare pag 2/3

 O carte tehnică mai are, adesea şi o tabelă de La unele cărţi, indexul este
index alfabetic al termenilor. Unele cărţi au şi mai important decât cuprinsul!
un index al figurilor şi un index al tabelelor.

Material de studiu pentru studentii USAMV Iasi


Cuprins

M. Călin - www.uaiasi.ro
M. Călin -
www.uaiasi.ro Index
Material de studiu
pentru studentii
alfabetic
USAMV Iasi 9 10

Indexarea într-o bază de date Indexarea într-o bază de date (continuare)


 Indexarea poate fi aplicată mai multor câmpuri ale
 Într-o tabelă indexată după un anumit câmp,
indexul este de fapt o altă tabelă, stocată intern tabelei (aşa cum cartea din exemplu poate fi
tot în baza de date, care are două coloane: indexată în mai multe moduri).
- prima coloană conţine valorile câmpului indexat  SGBD-ul este cel care creează automat tabela index
(câte un singur exemplar din fiecare valoare); a unui câmp, în urma primirii unei comenzi.
- pentru fiecare valoare din prima coloană, în a În Access, se setează proprietatea Indexed pe Yes
doua sunt informaţii de localizare (trimiteri) către
înregistrările care conţin valoarea respectivă.  Deci, indexarea îşi dovedeşte utilitatea în operaţiile
de căutare în baza de date (interogări, sortări), în
 Parcurgerea tabelei index (de către motorul
SGBD-ului) este mai uşoară pentru că ea este cazul căutărilor după câmpurile indexate. Într-o
mai mică, iar valorile din prima coloană sunt într-o căutare după un câmp neidexat, tabela va fi
anumită ordine (crescătoare sau descrescătoare). examinată secvenţial.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
11 12

De ce să nu indexăm toate câmpurile


unei tabele?
De reţinut că...
 Căutarea după un câmp indexat este mai rapidă.  Un index nu are absolut nicio legătură cu
 Pe de altă parte, indexarea încetineşte procesul de
structura logică a bazei de date!
actualizare a tabelei, în special la crearea de noi  Adesea, se confundă termenul index cu cel de
înregistrări. Încetinirea este tot mai accentuată cu cheie (primară, externă etc.)
cât sunt mai mulţi indecşi (pe mai multe câmpuri).  Diferenţa între cei doi tremeni:
Motivul: la orice adăugare sau ştergere de - Cheile sunt structuri logice, folosite la
înregistrare în tabelă, trebuie actualizate toate identificarea înregistrărilor într-un tabel. Cheile apar
tabelele de indecşi definite pentru ea. în diagrama entitate – relaţie.
 Analogie cu cartea din exemplu: adăugările sau - Indecşii sunt structuri fizice, utilizate la
ştergerile de paragrafe cer actualizări în Cuprins şi optimizarea procesului de căutare a datelor.
în toate tabelele index ale acesteia. Tabelele index nu apar în diagrama E–R.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi 13 M. Călin - www.uaiasi.ro
Material de studiu pentru studentii USAMV Iasi 14

Indexare unui câmp


într-o tabelă Access Importanţa indexării
 Pentru a indexa un câmp se setează proprietatea  Firma Microsoft arată că peste jumătate din tabelele
Indexed din bazele de date Access nu conţin nici un index. Asta
 Dacă un câmp va participa frecvent în interogări, arată că nu se înţelege corect importanţa indexării.
sortări sau grupări în cadrul rapoartelor, Ar trebui indexate toate câmpurile după care se fac
proprietatea Indexed trebuie setată. frecvent căutări sau sortări.
 Setările valide ale proprietăţii Indexed sunt:  Fără un index, Access va trebui să caute potrivirile în
No: Câmpul nu este indexat (valoarea implicită). tot tabelul înregistrare cu înregistrare.
Yes (Duplicates OK): Câmpul este indexat şi se Cheia primară a tabelei este întotdeauna indexată,
permit valori duplicate. Exemplu: câmpul Nume.
deoarece ea este folosită la localizarea înregistrărilor.
Yes (No Duplicates): Câmpul este indexat şi nu
este permisă apariţia valorilor duplicate.  Pierderile de performanţă datorate nefolosirii indexării
Exemplu: indexarea câmpului CNP pot fi foarte mari.
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi
M. Călin - www.uaiasi.ro Material de studiu pentru studentii USAMV Iasi 15 16

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