Sunteți pe pagina 1din 5

Sisteme de baze de date evoluate

Baze de date spatiale


Pe langa datele clasice care domina bazele de date, managerii, analistii s-au lovit de asa
numitele date speciale1 care nu puteau fi gestionate cu succes de sistemele clasice de gestiune a
bazelor de date. Ca efect al acestei probleme au inceput sa apara tehnologii specializate pe una
sau mai multe tipuri de date speciale. Una dintre aceste tehnologii a fost The Geografic
Information System (GIS).
GIS ofera un mecanism important de analiza si vizualizare a datelor geografice care i
permite utilizatorului sa combine cu usurinta datele pentru obtinerea rezultatelor dorite.
Desi gis ofera un set bogat de operatiuni care pot fi executate asupra datelor, s-a constatat ca in
cazul unor cantitati mai de informatii rezultatele nu sunt satisfacatoare. Astfel s-a ajuns la
concluzia ca un sistem de gestiune al bazelor de date spatiale ar creste eficienta si productivitatea
operatiunilor executate asupra datelor.
Baza de date spatiala este o colectie de date spatiale si clasice. O astfel de baza de date
este optimizat sa tina si sa interogheze date referitoare la obiecte incadrate n spa iul geografic
cum ar fi puncte, linii si poligoane.Altfel spus ea trebuie sa fie capabila sa recunoasca si date SQL
cum ar fi int, varchar, dar si date spatiale: punct, linie, poligon. Un exemplu edificator al datelor spatiale
sunt imaginile luate din satelit.

Tot mai multi utilizatori se indreapta catre utilizarea bazelor de date spatiale. Dintre
acestia se evidentiaza trei clase mari: oameni de stiinta, administratorii si oamenii de afaceri.
Pentru a putea prelucra cu succes aceste tipuri de date, bazele de date au fost upgradate
cu noi functionlitati, sau au aparut optiuni avansate ca oracle spatial. Aceasta latura a Oracle
fost dezvoltata pentru a facilita utilizatorilor gestiunea datelor geografice in forma in care sunt
stocate in baza de date. Ea a devenit cu adevarat importanta odata cu Oracle 8i, dupa care a
cunoscut o dezvolare continua.
Avand in vedere ca datele spatiale sunt bidimensionale sau tridimensionale dezvoltatorii
s-au indreptat asupra indecsilor spatiali. Dintre cei mai utilizati putem enumera : Grid index,
Quadtree, Octree, UB-tree, R-tree, kd-tree, M-tree
1 In aceasta categorie intra datele spatiale si multimedia.

Importanta acestora este capitala pentru ca determina timpul de executie si uneori


rezultatele interogarii.
Datele spaiale sunt stocate n structuri de date spaiale. Dintre acestea, un loc important l
ocup cele ierarhice care sunt bazate pe principiul descompunerii recursive. Avantajele acestor
tipuri de structuri rezult din faptul c sunt compacte, depind de natura datelor i permit
realizarea operaiilor de interogare n mod eficient. O astfel de structur de date este quadtree i
are la baz principiul descompunerii recursive, similar metodei divide-and-conquer. Ea se poate
utiliza la descrierea mai multor elemente aparinnd clasei datelor spaiale ca de exemplu:
puncte, linii, poligoane et

Structura quadtree se bazeaz pe subdivizarea succesiv a unei imagini n


patru cadrane de mrimi egale. Dac un cadran nu conine numai valoarea 1
sau numai valoarea 0, el va fi din nou subdivizat n patru cadrane i aa mai
departe pn sunt obinute cadrane ce au fie valoarea 1 fie 0. Valorile 1
respectiv 0 semnific faptul c zona aparine sau nu regiunii respective.
Cadranele obinute n urma procesului de divizare a spaiului se pot reprezenta prin intermediul unui
arbore numit quadtree. Structura quadtree este n esen un arbore oarecare ce conine noduri avnd
semnificaiile:
- rdcina corespunde imaginii n ansamblu;
- nodurile frunz corespund acelor blocuri pentru care nu mai sunt necesare subdivizri; blocurile fie
aparin regiunii (1) fie sunt n afara ei (0);
- celelalte noduri reprezint cte un cadran al regiunii care a necesitat o subdivizare.
Pentru orice nod ce nu este frunz, fii lui corespund cadranelor n ordinea NE (I), SE (II), SV (III),
NV (IV).
Structura quadtree poate fi diferit n funcie de:
a) Tipul de dat pe care o reprezint i care poate fi: punctul, linia, curba, suprafaa i regiunea.
b) Principiul care st la baza procesului de descompunere care se poate face n pri egale la fiecare
nivel (descompunere regulat) sau n m pri de mrimi diferite n funcie de data iniial;
c) Rezoluia descompunerii care poate fi variabil
Aceast structur poate fi de asemenea utilizat la reprezentarea imaginilor n trei sau mai multe
dimensiuni. Varianta cu trei dimensiuni se numete octree.
Modelul de construire a acestui arbore presupune ca imaginea s fie ncadrat
ntr-un cub care va fi recursiv subdivizat n 8 cuburi egale i aa mai departe
pn cnd sunt obinute regiuni uniforme din punct de vedere a culorii ori se
ajunge la un anumit nivel predefinit de descompuneri.

Dezvoltarea unei structuri ierarhice este avantajoas deoarece se poate folosi la procesele de
interogare a datelor spaiale dar i pentru c se economisete spaiul de memorie necesar reprezentrii
unor astfel de date.
Reprezentarea original a structurii quadtree a fost aceea de arbore care utiliza pointeri. In acest fel,
spaiul de memorie consumat este destul de mare, de aceea s-au propus, pentru a mbunti acest
variant, dou modaliti.
Prima trateaz imaginea ca pe o colecie de noduri frunz, unde fiecare nod este reprezentat printr-o
pereche de numere. Exist un numr n baza 4, numit codul locaiei, care corespunde secvenei
direcionale ce localizeaz frunza i stabilete astfel calea de la rdcin i un numr ce indic
adncimea la care nodul frunz este regsit.
A doua modalitate reprezint imaginea n forma unei traversri a structurii
quadtree. Ea este foarte compact dar nu este uor de folosit cnd se dorete
accesul aleator la un anumit nod.
Reprezentarea punctelor se face n funcie de operaiile care urmeaz s se execute cu aceste date.
Dintre multiplele moduri de reprezentare a punctelor, adecvat este structura de date PR quadtree (P
pentru puncte i R pentru regiuni), deci o adaptare a structurii quadtree la tipuri bine precizate de date
spaiale. Aceast structur se bazeaz pe o descompunere regulat care urmrete asocierea unui
punct cu un cadran. Procesul de construire este similar cu cel al structurii quadtree, diferena este c
nodurile frunz fie nu conin nimic, fie conin puncte prin valorile coordonatelor lor. In figura 3 se
poate observa corespondena dintre puncte i cadrane care st la baza construirii arborescenei.
Dezavantajul metodei const n faptul c, dac punctele sunt foarte apropiate,
atunci nivelul maxim de descompunere poate fi foarte mare. Avantajul este c
structura devine atractiv n cazul n care prelucrarea datelor spaiale implic
operaii de cutare. Un exemplu tipic de folosire a arborelui l constituie
determinarea oraelor din nord-estul rii. Oraele vor fi cutate n regiunile care
compun cadranul NE al imaginii (Suceava i Iai), lucru uor de realizat avnd n
vedere modul de construire a structurii quadtree.

Pentru manipularea datelor spaiale este nevoie ca acestea s fie reprezentate n diferite forme. O
modalitate const n a utiliza structuri de date bazate pe ocuparea spaial a datelor. Acest metod
presupune descompunerea spaiului n regiuni numite partiii. De aceea, metoda este cunoscut sub
numele de metoda partiionrii. Partiionarea datelor spaiale se bazeaz pe conceptul minimizrii
ariei ocupate de partiie. In acest caz, obiectele spaiale sunt grupate n ierarhii i apoi ele sunt stocate
n alte structuri de date. Structurile de indexare a datelor spaiale multidimensionale au la baz dou
abordri:
- prima se bazeaz pe observaia c data spaial ocup un subspaiu a spaiului multidimensional;
- cea de-a doua se bazeaz pe faptul c data fiind multidimensional, un numr mic de dimensiuni
stocheaz majoritatea informaiei.

Structura arborescent R (Rectangle tree), face parte din prima categorie i


este similar ca reprezentare i mod de exploatare cu arborele B. Ea are mai
multe variante proiectate n scopul organizrii unei colecii de date spaiale prin
reprezentarea lor n dreptunghiuri n dimensionale
Fiecare nod n arbore corespunde celui mai mic dreptunghi n dimensional care
include fii lui. Nodurile frunz conin pointeri ce refer datele spaiale din baza
de date. Obiectele sunt reprezentate prin cele mai mici dreptunghiuri care le
conin.
Partiionarea spaiului n partiii disjuncte a dus la crearea unei structuri derivate
din arborele R i anume R+ . Deoarece regiunile sunt disjuncte, nseamn c pot
fi obiecte care nu se ncadreaz doar ntr-o singur partiie. De aceea, ele se vor
descompune n subobiecte, fiecare aparinnd unor regiuni diferite. Devine,
astfel, important s se determine partiiile care conin o anumit dat spaial.
In literatura de specialitate s-a demonstrat c structurile de indexare bazate pe
arbori R nu sunt adecvate pentru date spaiale reprezentate ntr-un spaiu
multidimensional.
O structur performant de indexare a datelor spaiale multidimensionale cu numr mare de
dimensiuni este arborele X (eXtended node tree). Structura arborelui X este prezentat n figura 8.
Se observ c el conine trei tipuri de noduri:
- noduri de date care sunt la nivelul frunzelor i fac legura cu datele spaiale care se indexeaz;
- noduri directoare normale ce au rol n a dirija cutarea prin arbore i sunt similare nodurilor interne
dintr-un arbore R; i
- supernoduri care sunt n fapt noduri directoare de mrime variabil.
Scopul principal al acestor supernoduri este s evite divizarea nodurilor directoare, care ar avea ca
rezultat construirea unei structuri ierarhice ineficiente. Arborele X este diferit de arborele R cu noduri
de dimensiuni mari prin faptul c el conine noduri de dimensiuni mai mari doar dac este necesar.
Supernodurile sunt create n timpul inserrii cnd capacitatea unui nod trebuie depit i nu se poate
evita acest lucru prin alte procedee.
Pentru un arbore X sunt dou cazuri extreme:
1. nici un nod director nu este supernod;
2. exist doar un singur supernod ce formeaz rdcina arborelui, n rest sunt doar noduri de date.