Sunteți pe pagina 1din 40

CAPITOLE AVANSATE

DE BAZE DE DATE
BAZE DE DATE
SPAIO-TEMPORALE
- Baze de date spaiale -

Obiecte spatiale

nainte de implementarea unei aplicaii propriu-zise, pasul


obligatoriu este cel de modelare a datelor implicate.

Modelarea datelor care urmeaz a fi stocate ntr-o baz de date


are n vedere n primul rnd caracteristicile sistemului de
gestiune al datelor, iar studiul proprietilor viitoarelor date
gestionate este urmtorul pas.

Aplicatii: GIS (Geographic Information System), CAD


(Computer-Aided Design), CAM (Computer-Aided
Manufacturing), VLSI-design (Very-Large-Scale Integration);
plus robotica, electronica, arhitectura, biologia, medicina,
ecologia s.a.

Notiuni si semantici spatiale

Partiia: Fie S o mulime nevid. Atunci P = {P1, P2, , Pp} este o


partiie a lui S dac i numai dac sunt ndeplinite condiiile:

i:=1..p, Pi
i, j:=1..p, i j, Pi Pj =
Pi = S, i:=1..p

n particular, o partiie este implicat n descompunerea spaiului de lucru


[Sa90] pentru gestiunea unor proprietati ale spatiului (harti tematice) sau
in modelele raster.
Elementele unei partitii poligonale sau non-poligonale. Cea mai mare
parte a modelelor spaiale care efectueaz o partiionare a spaiului de
lucru apeleaz la prima variant deoarece formele poligonale sunt uor de
reprezentat i de gestionat.
O partiie a spaiului este numit regulat dac poligonul unui element al
partiiei este regulat. Altfel, e denumit ne-regulat.
Dac o partiionare permite descompunerea recursiv a elementelor sale,
atunci e considerat a fi nelimitat, altfel este limitat.

Figura. Tipuri de partitii: regulat non-limitat, regulat


limitat, non-regulat non-limitat.

Obiecte spatiale intalnite frecvent (intr-un spatiu 2D):

punctul, linia i regiunea. Acestea constituie reprezentarea obiectelor


simple, individuale.
Alturi de acestea, exist tipuri de date care particularizeaz cele trei
tipuri de baz, precum segmentul, jumtatea de segment (utilizat n
reprezentarea dual a unui segment, considernd o jumtate de
segment corespunznd unui capt al segmentului) [FG+00], cercul,
regiunea cu goluri [FG+00, GB+00] .a.
n plus, anumite aplicaii necesit modelarea i gestiunea de colecii de
obiecte spaiale corelate spaial: partiie (de exemplu: harta judeelor),
reea sau graf (de exemplu: reea de transport, ruri, electricitate,
comunicatii).

Obiecte spatiale

Centroid: centrul de greutate al unei


figuri geometrice.

De exemplu: centroidul unui segment


de dreapt ntr-un spaiu 2D,
S = ((x1, y1), (x2, y1)),
este dat de punctul de coordonate
PC = ((x1 + x2) / 2, (y1 + y2) / 2).
Vezi figura.

Structura spaiului

Harti tematice (layer-e): asocierea de anumite caracteristici unor


regiuni din spatiul de lucru; o harta tematica partitie a spatiului de
lucru, iar fiecarui element al partitiei ii este asociata o valoare din
tematica hartii (ex: relief, temperatura, culturi agricole etc.). Vezi
model raster.

Structura spaiului folosit este unul din aspectele care difereniaz


modelele spaiale.
Exist dou tehnici de modelare a datelor spaiale ntr-un sistem de
calcul: raster (grid) i vectorial [WWW1].

n cadrul unui model vectorial, o informaie spaial indic unde exist


sau unde se produce ceva, iar n cadrul unui model raster indic ce
exist sau se produce pretutindeni (n fiecare locaie a realitii
reprezentate).

Structura spatiului

Modelele raster (grid) reprezint spaiul de lucru acoperit de o mulime de celule i


trateaz informaia precum temperatura, presiunea, altitudinea ca funcii spaiale ce
transform o celul ntr-un domeniu de atribut. Regiunile asociate acestora
formeaz o partiie a spaiului de lucru.
Acest tip de modelare ofer o viziune continu a spaiului [CZ00].
Dei nu exist restricii teoretice privind modul de partiionare, aceasta este
efectuat n general sub form de grid, cu celule rectangulare.
Parametrii care definesc un model raster: dimensiunea gridului, rezoluia gridului,
informaie de legtur geografic.

Primii doi factori sunt n legatur direct: pentru un acelai spaiu de lucru, cu ct
gridul conine mai multe linii i coloane, cu att rezoluia este mai mare.
Informaia de legtur geografic reprezint informaia de asociere a unei celule cu
o locaie din realitatea modelat. Fiecare celul este identificat prin linia i coloana
din grid unde este poziionat (nu conform siturii spaiale geografice).

Unei celule i pot fi asociate valorile anumitor atribute (unul sau mai multe) ale
punctului central al acesteia. Astfel, reprezentarea raster a obiectelor spaiale poate
surprinde:

valori numerice continue (informaie cantitativ, de exemplu: temperatura)


categorii continue (informaie calitativ, de exemplu: tipuri de clim).

Structura spatiului

Modelarea spaial de tip raster: folosit n general n reprezentarea hrilor


tematice (de exemplu: o hart a nivelelor de temperatur, a tipurilor de
vegetaie etc.).
n cazul n care exist mai multe asemenea hri definite pe o regiune
spaial pentru diferitele caracteristici surprinse, se permite suprapunerea
acestora n scopul obinerii de informaie complex, comparativ, sau de
analiz.
Alturi de hri tematice, pot fi reprezentate ntr-un spaiu modelat ca grid i
obiecte spaiale discrete.
Acestea sunt reprezentate prin tabloul celulelor / pixelilor a cror acoperire
se intersecteaz cu forma obiectului. Astfel, datele spaiale nu au caracter
de continuitate, ci sunt divizate n uniti discrete de informaie.

Structura spaiului

Figura.
Model
raster

Structura spaiului

Figura.
Model raster.
Suprapunere

Structura spaiului

Figura.
Model
raster.
Battleships

Structura spaiului

Model raster

Avantaje: folosete structuri de date simple, proceduri de analiz spaial


simple

Dezavantaje: nevoia unui spaiu de stocare relativ mare (fapt care depinde
i de granularitatea gridului i informaia asociat celulelor), lipsa acurateii
de reproducere vizual a datelor n cazul unei granulariti mai puin fine

Structura spaiului

n cadrul modelelor vectoriale, orice punct este reprezentat prin coordonate


relative la un punct de referin din spaiul de lucru.
Strns legat de modelul vectorial este topologia, preocupat de ordine,
continuitate, poziie relativ.
Datele spaiale modelate vectorial reprezint caracteristici discrete, iar un
model vectorial surprinde doar informaie util (a obiectelor reprezentate),
nu i referitoare la ntreg spaiul de lucru. Astfel, se spune c ofer o viziune
discret a spaiului [CZ00].
Avantaje: sunt uor de reprezentat i gestionat tipurile de date spaiale
menionate anterior (depinde, totusi, de complexitatea lor), spaiul de
stocare mai redus dect n cazul modelului raster, relaiile metrice sunt
uor / precis de determinat, afiarea datelor este mult mai apropiat de
realitate, iar rezoluia nu este un parametru al sistemului, ci este dat
implicit de acurateea datelor primite n sistem
Dezavantaje: necesitatea structurilor de date mai complexe, a
echipamentelor i aplicaiilor mai costisitoare (de exemplu distanta este
mai usor de calculat, intersectia poligoanelor este mai greu de obtinut).

Structura spaiului

Figura. Model vectorial

Discretizarea domeniului spaial

Domeniul spaial al majoritii aplicaiilor spaiale este vzut doar teoretic ca


fiind spaiul euclidian. ntruct un sistem de calcul este limitat n
reprezentarea mulimii infinite de numere reale, pentru modelarea datelor
spaiale se folosete:

Situatie spre a fi discutata: intersectia a doua segmente, in cazul in care punctul de


intersectie are coordoonate care nu apartin de domeniul ales. Se disting dou
orientri n tratarea unei asemenea anomalii, n funcie de modelul spaial i de
acurateea cerut de ctre aplicaie:

un domeniu discret, dictat de domeniile tipurilor de date avute la dispoziie n


sistem (numit aici domeniu continuu discretizat), sau
un domeniu discret redefinit n cadrul proiectrii.

se accept ca rezultatul s fie o aproximare a celui real, n aplicaiile care i


permit asemenea erori de calcul; aceast situaie apare ndeosebi n
discretizarea spaiului de lucru prin utilizarea domeniilor tipurilor de date
(numere reale) ale sistemului de calcul; nu se corecteaza segmentele;
se aplic tehnici de corectare a rezultatului prin translatarea punctului real
de intersecie spre un punct al domeniului spaial [GS93]; se corecteaza
segmentele.

(Vezi problemele de intersectie in cadrul realm-ilor.)

Baze de date spaiale

Definiie. Datele ce reprezint poziia i / sau forma unor obiecte,


indiferent de sistemul de referin, se numesc date spaiale.

Definiie. O baz de date spaial este o baz de date optimizat pentru


stocarea, gestiunea i interogarea datelor spaiale. Aceasta pune la
dispoziie tipuri de date spaiale n modelul su de date i n limbajul de
interogare, suport pentru tipuri de date spaiale n implementare, indexare
spaial i algoritmi eficieni pentru join spaial [Gu94].

Teoretic, orice variabil care poate fi localizat spaial sau creia i se pot
asocia coordonate spaiale (indiferent de sistemul de referin) poate fi
inclus ntr-o baz de date spaial. Aceste date sunt identificate sub
diferite denumiri: date geometrice, geografice sau spaiale.

Observaie. Deosebirea dintre baze de date de imagini i baze de date spaiale.

Modelarea datelor spaiale

Realm-i

Un model spaial care folosete un domeniu discret n reprezentarea


spaiului i a obiectelor spaiale [GS93, GS95, Sc95]; folosete un domeniu
finit de valori numerice care poate fi definit de ctre utilizator i care
constituie baza definirii unei mulimi de tipuri de date spaiale.

Definiie. Realmul este o mulime finit de puncte i segmente de dreapt


definite pe un domeniu finit, de tip grid, astfel nct:

fiecare punct este un punct al gridului;


fiecare capt de segment este un punct al gridului;
nici un punct din realm nu aparine unui interior de segment;
oricare dou segmente distincte nu se intersecteaz i nu se suprapun.

Obiecte spatiale usor de modelat: puncte, linii, regiuni, plus retele sau
partitii. Acestea pot fi reprezentate folosind doar puncte si segmente ale
realm-ului. Un obiect spatial nu este creat pe realm (direct), ci pe realm
sunt create elemente de constructie (puncte, linii) asociate acestuia.

Modelarea datelor spaiale

Realm-i

ROSE algebra
Tipuri de date
Operatori spatiali (=, <>, disjoint, on-border-of, intersection, area, closest, etc.)
Actualizarile sunt efectuate pe obiectul spatial si pe elementele realm-ului
asociate acestuia (propagarea actualizarilor).
Bd contine obiecte spatiale (id + alte caracteristici) + referinta(e) la
obiectul(ele) din realm care-l reprezinta
Fiecare punct & segment al realm-ului contine lista id-urilor obiectelor care-l
contin in geometria lor
Avantaje: posibilitatea de definire a unor tipuri distincte de date spaiale pe
acelai domeniu, garania proprietilor de nchidere (n operaiile spaiale), i
forarea consistenei geometrice a obiectelor n relaii spaiale (de exemplu:
adiacena a dou obiecte de tip regiune).
Dezavantaje: integrarea relativ dificil a realmilor ntr-un SGBD, costul
propagrii actualizrii realmului la nivelul atributelor obiectelor i al refacerii
obiectelor spaiale din elementele realmului.

Figura. Domeniu spaial discret de tip grid i obiecte spaiale de


tip punct (P), linie (L), i regiune (R).

Figura.
Problema
interseciei /
realm-i.

Complexe simpliciale [Sc95]

Consider spaiul de lucru ca fiind continuu (teoretic) sau discret, compus


dintr-o colecie de forme geometrice neregulate.
Prin alturare de asemenea forme de baz se permite modelarea spaiului
i a obiectelor spaiale; un obiect de baz este numit k-simplex [Sc95].

Definitie. Fie k+1 puncte din Rn, v0, v1, ..., vk, astfel nct vectorii v1 - v0, ...,
vk - v0 sunt liniar independeni. Mulimea {v0, v1, ..., vk} este numit
independent geometric i mulimea de puncte
k

k = {x Rn |

x i vi , i 1, i 0} Rn
i: 0
i: 0

este numit simplex de dimensiune k (k-simplex), cu vrfurile v0, v1, ..., vk.

Figura. Simplexe de diferite dimensiuni (in spatiul 3D)

Complexe simpliciale

Un k-simplex reprezint nchiderea convex a celor k+1 puncte n spaiul cel


putin k-dimensional . Orice ksimplex este format din k+1 simplex-uri de
dimensiune k-1, unde acestea sunt numite fee ale obiectului k-simplex .

k-complex: multime finita de simplexe, pentru care cea mai mare dimensiune
este k.
K-complex restrictie: intersectia a doua simplexe este multimea vida sau o
fata comuna a acestora (simplexe de aceeasi dimensiune).
Obiectele spaiale sunt situate n acest spaiu i orice asemenea obiect este
construit prin agregare de obiecte de tip simplex din cadrul partiiei.

Avantaje: pstrarea consistenei topologice ntre obiectele spaiale i


implementarea fr dificulti a structurilor de date i a algoritmilor de
gestiune a complexelor simpliciale.
Dezavantaje: costul ridicat de triangulare a spaiului de lucru i de calcul a
unor operaii numerice, precum distanele.

Figura. Complexe simpliciale

Algebra geo-relationala

Un model de date spaiale definit pe spaiul Euclidian continuu discretizat


[Gu88], propus ca implementare ntr-un SGBD relaional.

Modelul cuprinde tipuri de date spaiale, mpreun cu operatori ai algebrei


georelaionale (operatori pentru datele spaiale).
Tipuri de date spatiale:
Point (corespunztor unui punct al spaiului),
Line (ca secven de segmente),
Pgon i Area (corespunztoare regiunilor din plan, reprezentate ca
poligoane simple). Tipul de date Area este similar tipului Pgon, cu
restricia c obiectele de acest tip sunt elementele unei partiii.

Algebra geo-relationala

Un obiect cu caracteristici spaiale este reprezentat printr-un tuplu al unei


relaii, iar o relaie conine o colecie omogen de obiecte geometrice
(mulime de puncte, mulime de linii etc.); un asemenea tuplu contine
atribute geometrice si non-geometrice.
Obiectele spaiale modelate reprezint direct obiectele din realitate, fr a
folosi descompunere n obiecte primitive (k-simplex) sau a mprumuta
elemente ale domeniului (realm).

Avantaje: structuri de date simple, usor utilizabile.


Dezavantaje: obiectele spaiale sunt distribuite n cadrul a mai multor
relaii, n funcie de tipul formei geometrice care le caracterizeaz.

K-Spaghetti

K-Spaghetti [LT92] este un model de date utilizat pentru reprezentarea


obiectelor spaiale ntr-un spaiu vectorial k-dimensional. Aceast tehnic de
modelare este frecvent ntlnit n cadrul aplicaiilor precum CAD sau GIS,
unde, n general, dimensiunea spaiului este 2 sau 3.
Scopul: de a furniza un mod general de a reprezenta relaional obiectele
geometrice printr-un tuplu sau un set de tuple.
Fiecare obiect spatial este triangulat, iar fiecare triunghi este reprezentat
printr-un tuplu al relatiei care stocheaza obiectele spatiale.

Capabil sa reprezinte obiecte de tip punct, segment de dreapta, poligon


(posibil, prin triunghiuri degenerate).

Figura. Punct (P), segment (S), poligon non-convex (Pg)

Tabel. Inregistrari k-spaghetti

OID

x1

y1

x2

y2

x3

y3

Pg

Pg

Pg

Model spaial cu constrngeri liniare

Iniiat n [KK+90], modelul de baze de date cu constrngeri a fost uor


implicat n reprezentarea datelor spaiale [BB+97, GR+98a].
BD contine un set finit de constrangeri.
Aplicarea constrngerilor n domeniul datelor spaiale const n
reprezentarea obiectelor geometrice ca mulimi infinite de puncte date de
formule de logica predicatelor de ordinul nti.
Aceste formule sunt n conjunctii de constrngeri liniare, unde
constrngerile liniare sunt de forma

unde {=, }, ai Z, p 1.

a x a
i:1

Ex: happy hour


hour > 9 AND hour <= 13 OR hour = 22

se reprezinta =>
-hour <= -10 AND hour <= 13
hour = 22

Obiectele geometrice care pot fi reprezentate cu ajutorul constrngerilor


liniare: punct, segment, semi-deapt, dreapt, poligon sau orice regiune
(finit sau infinit) a spaiului.

Ca i tip de modelare a spaiului, corespunde celui vectorial.

Avantaje: permite reprezentarea obiectelor intr-un spatiu n-dimensional,


unde n 1, chiar daca fizic este greu de imaginat; poate reprezenta subspatii infinite intr-o maniera finita (limitata).
Limitari ale modelului: in general se reprezinta doar poligoane convexe (cu
ajutorul a doua sau mai multe constrangeri liniare); pentru un poligon
concav se descompune in poligoane convexe si se obtine prin reuniunea
acestora.

Figura. Punct (P), segment (S), poligon non-convex (Pg), regiune


infinita (Ri)

Tabel. Constrangeri lineare


Obiect geometric

Constrangeri lineare

x=2y=5

3x - y = 2 -x -1 x 2

Pg

-x -5 x 7 -y -2 y 6

Pg

-y -1 y 2 -x -5 x + y 8

-x + y 1 2x + y 18

Model de date pentru manipularea partiiilor

Un model de date adaptat reprezentrii hrilor tematice / partitiilor este


descris n [SV89].
Se reprezint numai date de tip regiune.

Regiunea elementar este o mulime de puncte 2D, ce poate fi poligon sau


submulime infinit din R2, mrginit de drepte,
Reuniunea a dou regiuni elementare (conectate sau non-conectate) este
tot o regiune elementar.
O regiune elementar sau un set de regiuni elementare determin o regiune.

O hart tematic este reprezentat printr-o mulime de tuple, unde un tuplu


reprezint o regiune. O relaie ce conine datele unei hri include n
structur atribute de tip non-spaial i cel puin un atribut de tip spaial.

Un defect al acestui model este lipsa constrngerilor de disjuncie la nivelul


elementelor unei hri necesar in cadrul unui asemenea model. n plus,
deoarece fiecare hart este memorat ntr-o relaie individual, modelul de
date este dependent de aplicaie.

Model de date pentru manipularea partiiilor

Cerinte:

Tip de data regiune (limitata, eventual ne-limitata)


Impunerea de constrangeri a.i. sa se respecte definitia partitiei
De preferat obtinerea unor structuri care sa nu depinda de problema
propusa

Baze de date spaiale

Bibliografie (minim)

[Sa90] H. Samet, The Design and Analysis of Spaial Data Structures, AddisonWesley, Reading, MA, 1990.
[FG+00] L. Forlizzi, R. H. Gting, E. Nardelli, M. Schneider, A Data Model and Data Structures for Moving Objects Databases,
SIGMOD Conference, p. 319330, 2000.
[GB+00] R. H. Guting, M. H. Bohlen, M. Erwig, C. S. Jensen, N. A. Lorentzos, M. Schneider, M. Vazirgiannis, A Foundation for
Representing and Quering Moving Objects, ACM Transactions on Database Systems (TODS), Vol.25(1), p.1-42, 2000.
[WWW1] Data Types and Models, Disponibil la http://www.gis.com/implementing_gis/data/data_types.html.
[CZ00] C. X. Chen, C. Zaniolo, SQLST: A Spatio-Temporal Data Model and Query Language, In Proceedings of the 19th
International Conference on Conceptual Modeling (ER'00), p. 96-111, 2000.
[GS93] R. H. Guting, M. Schneider, Realms, A Foundation for Spatial Data Types in Database Systems, In Proceedings of the
3rd International Symposium on Large Spatial Database Systems, p. 14-35, 1993.
[Gu94] R. H. Guting, An Introduction to Spatial Database Systems, VLDB Journal, Vol. 3(4), p. 357-399, 1994.
[GS95] R. H. Guting, M. Schneider, Realm-Based Spatial Data Types: The ROSE Algebra, VLDB Journal, Vol. 4(2), p. 243-286,
1995.
[Sc95] M. Schneider, Spatial Data Types for Database Systems, Ph. D. Thesis, Haga, 1995.
[Gu88] R.H. Guting, Geo-relational Algebra: A Model and Query Language for Geometric Database Systems, In Proc of
Extending Database Technology, p. 506-527, 1988.
[LT92] R. Laurini, D. Thompson, Fundamentals of Spatial Information Systems, Academic Press, 1992.
[KK+90] P. C. Kanellakis, G. M. Kuper, P. Z. Revesz, Constraint Query Languages, Symposium on Principles of Database
Systems, p. 299-313, 1990.
[BB+97] A. Belussi, E. Bertino, B. Catania, Manipulating Spatial Data in Constraint Databases, Proceedings of the 5th
International Symposium on Large Spatial Databases, p. 115-141, 1997.
[GR+98a] S. Grumbach, P. Rigaux, L. Segoufin, The DEDALE System for Complex Spatial Queries, In ACM-SIGMOD Intl.
Conf. on the Management of Data (SIGMOD), p. 213-224, 1998.
[SV89] M. Scholl, A. Voisard, Thematic Map Modeling, In. Proceedings of the 1st Symposium SSD, p. 167-190, 1989.

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