ST - Facultatea de Matematică şi Informatică

Download Report

Transcript ST - Facultatea de Matematică şi Informatică

CAPITOLE AVANSATE
DE BAZE DE DATE
BAZE DE DATE
SPAŢIO-TEMPORALE
- Baze de date spaţio-temporale -
Date spatio-temporale.
Modelarea obiectelor spatiotemporale

Anii 80 si 90 – un volum mare de cercetare in domeniul bazelor de
date spatiale si temporale.

Anii 90 – obiectele spatiale si timpul sunt incluse impreuna intr-un
singur model de date => modele de date spatio-temporale.

Primele tentative: adaugarea atributelor de timp intr-un model de date
spatial sau adaugarea de obiecte spatiale intr-un model de date
temporal. Apoi – modele de date ST care trateaza spatiul si timpul in
mod egal, ca dimensiuni / domenii similare (unified ST view).
Semantici spatio-temporale

Atribut spatio-temporal: un atribut care contine evolutia unui obiect
spatial in timp (atribut spatial + atribut de timp)

Obiect spatio-temporal: un obiect care contine un atribut ST

Evolutie spatio-temporala: mulţimea stărilor prin care trece un obiect
spaţial în timp, reprezentată printr-un atribut spaţio-temporal

De exemplu:


suprafaţele de culturi diferite sunt evaluate la sfârşitul fiecărei zile de
lucru, astfel că evoluţia obiectelor spaţiale care modelează terenurile
este discretă şi este înregistrată punctiform; forma unei parcele de
pământ se poate modifica în timp, însă numai în paşi discreţi, valoarea
acesteia rămânând constantă pe intervale de timp;
un autoturism în mişcare pe o şosea prezintă o evoluţie continuă a
poziţiei spaţiale
Atribute spatiale si modificari ale
atributelor spatiale ale obiectelor
ST

Proprietăţile spaţiale ale obiectelor spaţio-temporale reprezintă
caracteristici metrice (poziţia şi dimensiunea), direcţionale
(orientarea sau direcţia) sau topologice (forma).

Cele patru caracteristici spaţiale ale unui obiect spaţial suferă
modificări în contextul următoarelor transformări [CP+97]:




translaţia are ca efect modificarea poziţiei (în cazul obiectelor de tip
punct, segment sau regiune),
rotaţia aduce modificare la nivel de direcţie (pentru obiecte de tip
segment sau regiune),
expansiunea sau contracţia afectează dimensiunea (pentru obiecte de
tip segment sau regiune),
deformarea (mutaţia) cauzează modificări ale formei (în cazul obiectelor
de tip regiune).
Atribute spatiale si modificari ale
atributelor spatiale ale obiectelor
ST

Observaţie. Alte tipuri de transformări de tip mutaţie sunt agregarea (reuniunea sau
alăturarea) şi fragmentarea (divizarea sau desprinderea). Acestea, însă, afectează
caracteristicile spaţiale a mai multor obiecte şi pot să aibă ca efect crearea de noi
obiecte sau distrugerea unor obiecte existente. (vezi slide 13)

Figura – reprezintă un astfel de obiect spaţial ca dreptunghi, într-o stare iniţială
(figura (a)) şi după executarea unei rotiri cu 90˚ în sens trigonometric (figura (b)). Se
observă conservarea figurii geometrice, dar modificarea direcţiei prin modificarea
valorilor coordonatelor tuturor vârfurilor sale. Figura (c) reprezintă poligonul iniţial
după o operaţie de deformare, care păstrează, însă, dimensiunea sa (din punctul de
vedere al ariei).

In general – pentru un obiect spatial – reprezentam doar coordonatele sale (un set
de coordonate daca este de tip punct, coordonatele capetelor daca este un segment,
sau coordonatele varfurilor poligonului (sau a unui alt tip de aproximare) daca este o
regiune). Celelalte proprietati pot fi evaluate folosind coordonatele.
Atribute spatiale si modificari ale
atributelor spatiale ale obiectelor
ST

Figura. (a), (b), (c)
Aplicatii spatio-temporale

(O posibila clasificare in functie de obiectele spatiale implicate si tipul de evolutie)

evenimente în spaţiu şi timp: pentru obiectele spaţiale evolutive este de interes
doar poziţia, iar durata menţinerii acesteia este nesemnificativă (de exemplu:
recodurile mondiale);
obiecte (poziţii) valide pe un interval de timp: mărcile temporale sunt de tip
interval, iar caracteristicile spaţiale ale obiectelor sunt reprezentate doar de
localizarea spaţială (de exemplu: poziţionarea clădirilor sau trailers);
obiecte mobile: obiecte pentru care forma nu este semnificativă, cu evoluţie
continuă în timp a poziţiei (de exemplu: mijloace de transport);
regiuni cu existenţă instantanee: caracteristicile obiectelor spaţiale inclus poziţia şi
forma, iar durata de valabilitate a acestora este redusă la o instanţă de timp (de
exemplu: Jocurile Olimpice – regiunea unde au loc intr-un anumit an);
regiuni valide pentru o perioadă de timp: poziţiile şi formele obiectelor spaţiale
sunt marcate temporal cu intervale de timp (de exemplu: terenurile de culturi);
regiuni mobile: obiecte a căror formă prezintă evoluţie continuă în timp (de
exemplu: fenomenele meteo).





Proprietatile obiectelor spatiotemporale

Practic, proprietatile unui obiect ST pot sa includa:




non-spatial, non-temporal (tematice); fara semnificatie
spatiala sau temporala;
spatial (geometric); in general e vorba de obiecte cu
structura complexa;
temporal (non-spatial); atribute tematice care variaza in
timp + atribut de timp;
(plus, neaparat) spatio-temporal; atribut spatial + atribut
de timp.
Baze de date spatio-temporale

Definitie. Bazele de date spaţio-temporale (BDST) gestionează obiecte
spaţiale care suferă schimbări ale valorilor atributelor spaţiale în timp;
surprinde simultan aspecte spaţiale şi temporale ale obiectelor gestionate.
Un SGBD ST ar trebui sa includa tipuri de date ST, limbaj de interogare ST, indecsi
ST etc.





Exemplul 1.
Fie un obiect de tip Clădire, cu un atribut spaţial (poziţie) şi un atribut de timp (intervalul ce
reprezintă durata de viaţă a clădirii, şi anume anul în care s-a finalizat construcţia clădirii şi anul
în care a fost distrusă, timp).
Deoarece, în general, o clădire nu-şi schimbă poziţia, atributul spaţial nu-şi schimbă valoarea pe
întreg intervalul de timp ce reprezintă intervalul de viaţă al clădirii. În cel mai rău caz, o clădire
este distrusă şi se construieşte o altă clădire pe aceeaşi poziţie, însă aceasta semnifică deja
dispariţia unui obiect şi crearea unuia nou.
Astfel, obiectul de tip Clădire nu este un obiect spaţio-temporal.
Tabelul (1) conţine trei tuple ale unei relaţii Clădire cu structura [id_clădire, proprietar, poziţie,
timp], unde primul tuplu conţine informaţiile unei clădiri care a fost distrusă în anul 2006, iar al
treilea tuplu conţine informaţiile unei clădiri care a fost construită în 2006 pe poziţia primei cladiri,
şi care există în continuare.

Tabel (a)
Id_clădire
Poziţie
Timp
(170, 210)
[1990, 2006)
şi (100, 355)
[1995, Now)
(170, 210)
[2006, Now)
Proprietar
C1
Clădire birouri SC. Constructorul SA
C2
Facultatea
Informatică
C3
Cămin studenţesc
de
Matematică
Baze de date spatio-temporale






Exemplul 2.
Fie obiect de tip Teren cu un atribut spaţial (forma terenului, rectangulară) şi un atribut de timp
de tip interval.
Un teren (ca obiect identificat printr-un cod unic) îşi poate schimba forma pe parcursul existenţei
sale, în mod discret, păstrându-şi constantă valoarea atributului spaţial pe durata unui interval
de timp.
Fie relaţia Teren cu structura [id_teren, forma, timp].
Perechea de atribute (forma, timp) este un atribut spaţio-temporal, astfel că obiectele de tip
Teren sunt obiecte spaţio-temporale.
În tabelul (b) sunt reprezentate evoluţiile în timp a formei a două obiecte de tip Teren.

Tabel (b)
Id_teren
Forma
Timp
P1
((50, 75), (110, 160))
[01/01/1999, 01/07/1999)
P1
((50, 75), (95, 160))
[01/07/1999, 31/12/2002)
P2
((110, 150), (300, 160))
[20/01/2001, 01/03/2003)
P1
((40, 75), (95, 170))
[31/12/2002, Now)
P2
((110, 150), (310, 165))
[01/03/2003, 01/09/2006)
P2
((125, 150), (310, 165))
[01/09/2006, Now)
Identificarea obiectelor spaţiotemporale


În unele lucrări, precum [HW90], se consideră că orice modificare a
caracteristicilor spaţiale ale unui obiect este echivalentă cu crearea unui
obiect nou (alocarea unui nou identificator de obiect). Majoritatea modelelor
spaţio-temporale, însă, păstrează identificarea obiectelor spaţio-temporale,
cu excepţia cazurilor când modificarea este de tip reuniune sau divizare.
Exceptie – cazul agregarii sau fragmentarii:
 Agregarea
• reuniunea: obiectele afectate sunt distruse si se obtine un nou obiect
• join (alaturare): obiectele care sunt atasate unui alt obiect sunt distruse, si
obiectul carora sunt atasate isi pastreaza id-ul

Fragmentarea
• divizarea: un obiect este distrus si noi obiecte sunt obtinute prin divizare
• detasarea: se desprind parti dintr-un obiect; acest obiect isi pastreaza id-ul, si se
obtin alte noi obiecte.

Vezi figura.

Figura. (a) configuratia initiala a trei obiecte; (b) configuratia spatiala dupa
reuniunea P1 si P3 (rezulta P4), sau dupa atasamentul lui P3 la P1; (c)
configuratia spatiala dupa divizarea lui P2 in P5 si P6, sau dupa detasarea
lui P6 din P2
Modelarea datelor ST:
Modele de date ST
Criterii de clasificare a modelelor de date spaţio-temporale:

Setul de date spaţiale suportat:

•
•
•
structurile pot reprezenta doar date punctiforme, (sau, in general, obiecte spatiale de un singur tip)
structurile pot reprezenta obiecte spaţiale individuale punctiforme, liniare şi de tip regiune,
datele reprezentate sunt de tip reţea sau partiţie (colecţii de obiecte spaţiale inter-relaţionate spaţial).
Dimensionalitatea spaţiului:

•
•
permite reprezentarea de obiecte spaţiale într-un spaţiu de dimensiune constantă,
permite reprezentarea de obiecte spaţiale în spaţii de diferite dimensiuni.
Modul de reprezentare a spaţiului şi a obiectelor spaţiale:

•
•
vectorial,
raster.
Densitatea domeniului temporal:

•
•
•
discret,
dens (discretizat),
continuu (discretizat).
Relativitatea timpului:

•
•
relativ,
absolut.
Tipul mărcii de timp care intră în organizarea datelor spaţio-temporale:

•
•
•
tipul de timp valid,
tipul de timp tranzacţional,
tipul de timp valid şi tipul de timp tranzacţional.
Modelarea datelor ST:
Modele de date ST
Criterii de clasificare a modelelor de date spaţio-temporale:

Formatul mărcilor de timp:

•
•
punct,
interval.
Marcarea temporală este efectuată la nivel de:

•
•
•
atribut,
obiect,
plan spaţial.
Tipul evoluţiilor indexate:

•
•
•
indexează evoluţii discrete, punctiforme,
indexează evoluţii discrete, pe intervale de timp,
indexează evoluţii continue.
Modelarea evenimentelor:

•
•
nu reprezintă evenimentele care au cauzat modificări în starea obiectelor,
permite reprezentarea evenimentele în urma producerii cărora anumite obiecte şi-au modificat starea:
•
•
evenimentele sunt instantanee,
evenimentele pot avea durată.
Identitatea obiectelor:

•
•
obiectele îşi păstrează identitatea în urma modificărilor suferite individual,
orice modificare are ca efect distrugerea obiectului afectat şi, eventual, crearea unui nou obiect.
Îmbinarea datelor tematice, spaţiale şi temporale [EA02]:

•
•
•
•
orientate spaţial: se organizează o colectie de plane tematic  timp de-a lungul axei spaţiale,
orientate temporal: plane tematic  spaţiu sunt plasate de-a lungul axei temporale,
orientate tematic: plane spaţiu  timp sunt asociate obiectelor tematice,
combinate: sunt stabilite două sau mai multe baze organizaţionale, între care sunt stabilite legături.
Modelarea datelor ST:
Modele de date ST

Snapshot data model

Este unul dintre cele mai simpliste modele de date spaţio-temporale
conceptuale. Pleaca de la un model de date spatial (cu o structura a
spatiului oarecare) si adauga atribut de timp.
Aplica marcarea temporala la nivelul unui set de obiecte (nu obiecte
individuale). Obiectele sunt reprezentate ca layer-e spatiale, si fiecare layer
este marcat temporal.
Obiectele spatiale care pot fi reprezentate sunt puncte, linii, regiuni, partitii
sau retele (practic – orice). Setul de date spaţiale care pot fi reprezentate nu
este de interes în acest model.
Toate starile din evolutia unui obiect sunt marcate cu acelasi id (id
preservation in time).
Daca cel putin un obiect se modifica (pozitia si / sau forma), un nou obiect
spatial este creat sau un obiect spatial dispare, un nou layer este creat si
stocat (bineinteles – cu un nou timestamp).










Nu este o relatie directa intre doua layer-e consecutive.
Nu exista stocata informatie legata de evenimentele care au condus la
aparitia modificarilor de stare.
Timpul este VT, liniar, discret, absolut, reprezentat prin instante de timp
(discrete point-based evolutions).
Vezi figura – succesiune de layer-e spatiale.
Avantaje. Este un model usor de implementat. Starea curenta a setului de
obiecte este disponibila in orice moment.
Dezavantaje. Daca un obiect isi schimba starea cu mult mai des decat alte
obiecte, atunci sunt generate layer-e care contin informatie redundata (a
obiectelor neschimbate). Lista de layer-e nu contine informatie explicita
despre schimbari – pentru a identifica schimbarile suferite de un obiect,
trebuie comparata intreaga informatie din layer-e succesive.

Figura. Layer-e pentru Snapshot data model



Posibile imbunatatiri pentru Snapshot model: pentru a observa mai usor
schimbarile suferite de obiecte si pentru a reduce volumul de informatie
redundanta, s-a propus utilizarea de asa-numitele fisiere delta.
Doar starea initiala si finala (curenta) a layer-elor este stocata.
Toate modificarile care au loc sunt memorate in delta-files. Astfel, pentru a
determina evolutia unui obiect spatial sau starea lui la un moment dat, se
citesc delta-files incepand cu primul layer, pana la momentul la care se
doreste aflarea starii obiectului, sau pana la ultimul layer, pentru intreaga
evolutie.




Un alt model de date ST care incearca sa adauge timpul in GIS (Time in
GIS [La92]) – propune sa aplice marci temporale la nivel de atribut (e un
model spatial-oriented); spatiul este partitionat si pentru fiecare partitie este
stocata evolutia unui anumit atribut (cerut de problema).
Figura (a) reprezinta o partitonare a spatiului. Fiecare din aceste regiuni
poate fi in una din starile inundat (1) si ne-inundat (0). Pentru fiecare
regiune se cunoaste forma sa spatiala si evolutia starii (1 / 0) in timp.
Fiecare marca temporala (cand se modifica starea pentru cel putin o
regiune) este un nou atribut (o noua coloana) in tabelul ST.
Obiectele spatiale sunt reprezentate vectorial, domeniul temporal este liniar,
discret, si suporta ambele tipuri de timp (VT si TT).
Observatie. Modelul a fost conceput pentru o partitie statica. De fapt, avem
evolutie de atribute tematice 

Figura.








Historical Cadastral Database
Asociaza marci de timp obiectelor spatiale.
O marcă de timp este de tip interval de forma [tc, td], unde tc şi td reprezintă
momentele de timp în care obiectul a fost creat, respectiv distrus, şi sunt
instanţe de tip valid.
Domeniul temporal T este de tip liniar, discret, absolut.
Daca obiectul inca exista in realitatea modelata, atunci td = Now.
Obiectele spaţiale sunt modelate vectorial şi pot fi de tip punct, linie sau
regiune. Acestea îşi păstrează constante valorile caracteristicilor spaţiale pe
intervalul asociat [tc, td] => interval-based discrete evolution.
Acest model evită stocarea de date redundante în planuri succesive,
precum în modelul cu layer-e, deoarece actualizarea unui obiect este
răsfrântă doar asupra acestuia.
O problema – pierderea id-ului la orice modificare (practic, evolutie cu o
stare pentru fiecare id). O solutie [RM+94] este a stoca referinte intre stari
succesive ale aceluiasi obiect.

ST-simplexes

Un alt model de date ST care foloseste marcarea temporala la nivel de
obiect.
Practic, acest model este extinderea temporala a modelului de date spatial
bazat pe complexe simpliciale.
=> obiectele spatiale sunt reprezentate ca si complexe simpliciale si fiecare
k-simplex este marcat temporal cu doua intervale de timp (VT si TT). Astfel,
obiectele de baza sunt ST-simplexe (un obiect spatial 2D si doua intervale
de timp).
Spatiul este vectorial + doua dimensiuni temporale liniare, discrete.
Trateaza timpul ca alta dimensiune spatiala (un ST-simplex poate fi vazut ca
obiect spatial 4D).
A fost propusa o implementare object-oriented pentru ST-simplexe.






Figura.

ESTDM – event-based ST data model.

Event-oriented: pentru interogarile care vor sa afle informatie despre
evenimentele care au cauzat schimbarea starii obiectelor.
Acest model nu stocheaza snapshot-uri ale realitatii sau evolutii
independente ale obiectelor modelate, ci stocheaza explicit informatie
despre evenimentele aparute.
Spatiul modelat raster; practic – este capabil sa reprezinte evolutia
temporala a unuia sau a mai multor harti tematice.
Pentru fiecare harta tematica sunt folosite urmatoarele structuri:






hartă de bază ce conţine starea iniţială a temei de interes în aria geografică modelată;
listă (dublu) înlănţuită de evenimente care reprezintă dinamica ST a domeniului
tematic urmarit; fiecare eveniment din listă are asociată o marcă de timp de tip punct
şi o listă de componente ce conţin detalii ale modificărilor produse de eveniment
pentru o anumită celulă a gridului la un anumit moment de timp, faţă de o stare
anterioară (celulele modificate si noile valori);
antet care conţine informaţie tematică, referinţe la harta de bază, primul eveniment şi
ultimul eveniment din listă.



Nu reprezinta date redundante.
Usor de efectual interogari event-oriented, dar mai dificil pentru interogari
object-oriented (de examplu: starea unei harti tematice la un moment dat –
pentru fiecare celula a hartii, trebuie determinata starea curenta, prin
vizitarea fiecarei liste de componente modificate pentru fiecare eveniment.
Un alt model event-based ST este propus in [CJ98]. A fost proiectat pentru
gestiunea parcelelor de pamant si cladirilor dintr-un oras (aplicatii de
cadastru). Sunt stocate informatii despre obiectele spatiale si modificarile lor
in timp, precum si informatie decizionala (decizii legate de crearea /
distrugerea unei cladiri, schimbarea formei unei parcele de pamant, a
proprietarului etc.). Sunt stabilite relatii intre stari, stari si evenimente, si
intre evenimente.

Three-Domain Model

Se separa domeniul semantic de cele spaţial şi temporal.
Acest model este de tip combinat deoarece nu stabileşte o bază în
modelarea evoluţiilor ST. Sunt identificate trei domenii distincte, astfel că
modelul este capabil a reprezenta realitatea din punct de vedere locaţional,
entitate sau al timpului.
Obiectele gestionate apartin de unul din aceste 3 domenii.
Sunt stabilite relatii intre aceste domenii. Vezi Figura.
Astfel, se permite tratarea obiectelor gestionate intr-o maniera
independenta.





Figura.





Modelul relational propus contine 4 tabele: cate o relatie pentru fiecare
domeniu si o relatie pentru datele ST (ST table; relatia dintre cele 3
domenii).
Modelul spatial reprezinta o partitie a spatiului de lucru. Regiunile partitiei
curente sunt stocate in tabelul de date spatiale. Pentru a urmari evolutia
fiecarei regiuni, se pastreaza aceasta informatie intr-un graf orientat.
Tabelul de timp (timp cu elemente de timp) contine elemente de tip instanta
de timp (pot fi si intervale de timp, daca e necesar).
Tabelul tematic contine valorile posibile pentru un atribut tematic (de
exemplu: tipul de teren – padure, pasune, desert…).
Tabelul ST contine pentru fiecare element de timp (la care au avut loc
modificari, stocat mai intai in tabelul de timp) regiunile care au o anumita
valoare pentru atributul tematic (valoare tematica, instanta de timp, lista de
regiuni).

Graf istoric (unul dintre modele de tip graf istoric)

Surprinde în nodurile unui graf orientat stările obiectelor (numite şi versiuni)
şi tranziţiile în urma cărora a fost modificată starea obiectelor. Arcele unui
asemenea graf stabilesc legături istorice între versiuni şi tranziţii.
Versiunile obiectelor şi tranziţiile pot fi instantanee (fără durată) sau cu
durată.
O versiune descrie o stare statică a obiectului şi are asociate două mărci de
timp (intervalul de timp VT).
O tranziţie este considerată o entitate care face legatura între stări ale
obiectelor şi este marcata cu intervalul de timp în care tranziţia are loc.
Predecesorul într-o tranziţie poate fi o versiune sau un grup de versiuni, iar
succesorul – o versiune sau mai multe noi versiuni de obiecte.
Graful istoric reprezintă topologia temporală a obiectelor.





Graf istoric

Dimensiunea temporală este liniară, discretă sau continuă, absolută sau
relativă, VT şi / sau TT.
Entităţile de tip tranziţie pot fi de tip:







creare (un nou obiect este introdus în baza de date),
actualizare (modificarea valorii unui atribut non-spaţial sau spaţial),
distrugere (obiectul nu mai există în realitate, este şters logic, însă se poate
reîncarna ulterior),
reîncarnare (un obiect care a fost anterior şters / distrus şi este recreat,
posibil într-o altă locaţie),
divizare (un obiect este divizat în două sau mai multe părti; un obiect rezultat
poate avea acelaşi identificator cu al obiectului divizat),
reunire (prin alăturarea de obiecte existente se obţine un obiect cu un
identificator nou sau poate moşteni identificatorul unuia din obiectele
reunite).

Figura.

Graf istoric

În funcţie de lungimea intervalului de timp definit de cele două mărci de timp
ale versiunilor şi tranziţiilor, comportamentele obiectelor sunt clasificate ca:




obiecte ce sufera continuu modificări (versiunile nu au durată, iar tranziţiile
au durată),
obiecte pseudo-statice (la anumite intervale de timp stările obiectelor sunt
actualizate, astfel că versiunile şi tranziţiile au durată),
obiecte statice ale căror stări sunt actualizate de evenimente instantanee
(intervalele de timp ale versiunilor acoperă durata de viaţă a obiectului, astfel
că tranziţiile nu au durată).
Modelarea evoluţiilor spaţio-temporale cu ajutorul grafelor istorice poate fi
privită ca o extindere a unui model bazat pe evenimente. Utilizarea grafelor
are avantajul de a determina relaţiile temporale între obiecte şi versiuni ale
obiectelor direct din structura grafului.

Figura.

MOST – model pentru obiecte mobile

Model propus (initial) pentru reprezentarea evolutilor continue a obiectelor
de tip punct.
Introduce notiunea de atribut dinamic = atribut al carui valori se modifica
fara update explicit.
Deplasarea unui obiect mobil la un moment dat este reprezentată prin
vectorul de mişcare.
Vectorul de mişcare al unui obiect mobil este modelat ca atribut dinamic şi
este reprezentat ca funcţie de timp.
Domeniul spaţial este reprezentat vectorial, iar domeniul temporal valid
coincide cu domeniul temporal tranzacţional.





MOST – model pentru obiecte mobile

Reprezentarea unui atribut dinamic ca tuplu AD = (AD.vi, AD.ti, AD.fi), unde:





AD.vi este valoarea atributului la timpul AD.ti,
AD.fi este o functie de timp, definita pe [0, AD.ti+1 – AD.ti)
(timpii ti, ti+1 reprezinta momentele de timp cand se modifica parametrii de
evolutie ai atributului).
Astfel, valoarea lui AD la timpul t (intre ti si ti+1) este data de AD.vi +
AD.fi(dt), unde dt = t – AD.ti.
In general, functiile AD.fi sunt functii liniare de timp.

Un alt model de date pentru obiecte mobile (de orice tip) – cu reprezentare
feliata – sliced representation.

Modelul pleaca de la o serie de tipuri de date: tipuri de date simple
(numeric, string, Boolean etc.) si tipuri de date complexe.
Obiectele spatiale pot fi de tip: punct, segment de dreapta (reprezentat prin
doua puncte), linie (reprezentata prin lista de segmente), regiune
(reprezentata ca poligon = lista inchisa / lant de segmente), regiune cu
goluri si altele.
Un tip de data static este “imbogatit” cu o dimensiune temporala (operatie
numita “lifting”), obtinand asa-numitul tip mobil: mreal, mpoint, mregion
s.a.m.d. Practic, fiecare tip mobil mType este o functie de timp



mType : iTime  Type, unde iTime este un interval de timp.






O valoare a unui tip mobil este reprezentata folosind asa-numita “slicedrepresentation”: evolutia temporala a unui obiect este impartita intr-un
numar de unitati, iar fiecare unitate este reprezentata de o pereche (v, iT),
unde iT este un interval de timp, iar v este “valoarea” acelui obiect pe durata
intervalului de timp iT (v poate fi o constanta sau o functie de timp).
Astfel, acest model este capabil sa reprezinte evolutii discrete ale diferitelor
obiecte (unde valoarea definita pe un interval de timp este constanta) sau
evolutii continue (unde v este functie de timp).
Poate reprezenta evolutii pentru obiecte de tip simplu sau spatial.
Vezi Figura.
Asemenea datelor, unele operatii care erau definite pentru date statice, au
fost “lifted” pentru a actiona asupra datelor “mobile”.
De exemplu: pentru a calcula distanta dintre doua puncte mobile este definit
un operator pentru distanta “lifted”, care are rezultat de tip mreal
(mdistance(mpoint, mpoint) = mreal).

Figura. Reprezentarea feliata a evolutiei unui obiect mreal

K-Spaghetti parametrizat

Reprezintă parametrizarea temporală a modelului spaţial k-Spaghetti pentru
a reprezenta evolutii continue ale obiectelor spatiale.
Strategia aplicată constă în folosirea poligoanelor parametrizate, pentru care
coordonatele vârfurilor sunt funcţii (liniare) de timp
=> fiecare obiect spaţial este triangulat, iar fiecare tuplu care conţine
coordonatele unui triunghi este extins cu două câmpuri care defineşte
intervalul de timp valid al obiectului
=> coordonatele triunghiurilor sunt functii linieare de timp.
Modelul parametrizat păstrează modul de reprezentare vectorială a
domeniului spaţial, precum în modelul spaţial. Considerând fiecare triunghi
obţinut în urma operaţiei de triangulare ca obiect spaţial, marcarea
temporală este la nivel de obiect.
Exemplu:







T1, 1, 2,
t+2, 0, 2t-1, t+5, [1, 9]
T1, 1, t+1, 2,
2, 1,
t-1, [10, Now)

Modelarea datelor cu ajutorul constrângerilor liniare este aplicată cu
uşurinţă datelor spaţio-temporale.

În modelarea datelor ST, aceste constrângeri liniare au ca variabile
coordonatele spaţiale şi timpul.
În scopul reprezentării evoluţiei unui obiect spaţial în timp, se stabilesc
tuplurile de constrângeri, în general, de forma Ct  Cs, unde Ct este
constrângere care determina intervalul de timp valid pentru, iar Cs sunt
constrângerile care reprezintă starea evolutivă a obiectului spaţial.
În cazul unei evoluţii discrete pe intervale de timp, constrângerile Cs conţin
numai variabilele spaţiale, iar în cazul unei evoluţii continue, conţin şi
variabila temporală.



Sunt preluate avantajele modelării cu constrângeri a datelor spaţiale, şi
anume utilizarea unui număr oarecare finit de variabile (adaptare facilă la
schimbarea dimensiunii spaţiului de lucru) şi posibilitatea de reprezentare a
obiectelor deschise (ne-limitate). Un dezavantaj al acestui model este la
nivelul vizualizării evoluţiei obiectelor spaţiale, ca şi cost al transformării
constrângerilor în figuri geometrice corespunzătoare.
Vezi Tabel.

Tabel. Obiecte ST reprezentate cu ajutorul constrangerilor liniare

Obiect geometric
Constrangeri liniare
O1
x = 2  y = 5  t = 150
O2
3x - y = 2  -x  -1  x  2  -t  -100  t  200
O2
-x + y + 2t  -5  x  7  -y  -2  -t  -250

Modelul de date 3SST este propus ca nucleu al unui model de date ST
(care poate fi usor extins, daca e nevoie, in functie de aplicatie).

Similar 3-Domain model, dar mai mult decat atat, se considera 4 domenii
independente: tematic, spatial, timp, si evenimente. Este permisa existenta
unei relatii intre oricare dintre domenii.

3SST

=> urmatoarele tipuri de obiecte por fi reprezentate:





obiecte non-spaţiale non-temporale (denumite anterior tematice): obiecte
care nu au atribute spaţiale şi nici un atribut dinamic;
obiecte (strict) spaţiale: obiecte care au cel puţin un atribut spaţial, dar a
cărui evoluţie în timp nu este înregistrată, şi care nu are nici un atribut
tematic temporal (dinamic);
obiecte (strict) temporale: aceste obiecte nu au nici un atribut spaţial, dar au
asociate cel puţin un atribut de tip timp valid sau timp tranzacţional;
obiecte spaţio-temporale: sunt obiecte care au cel puţin un atribut spaţial
dinamic;
plus - evenimente



Spatiul (obiectele spatiale) este reprezentat vectorial.
Timpul – VT si / sau TT.
Fiecare obiect este reprezentat ca multime de puncte:






Un punct este reprezentat printr-un punct.
Un segment de dreapta este reprezentat printr-o pereche de puncte
(conteaza ordinea!).
O dreapta este reprezentat printr-o multime de segmente orientate.
Un poligon (convex sau concav) este reprezentat printr-o lista inchisa de
segmente orientate.
Fiecare punct poate fi reprezentat printr-o constanta sau o functie liniara de
timp.
Vezi Figura.


Observatie. Lista de varfuri ale unui poligon – in ordine trigonometrica (vezi
observatia urmatoare).
Observatie. Fie un triunghi dat de V0 = (x0, y0), V1 = (x1, y1), V2 = (x2,
y2), in ordine trigonometrica. Aria triunghiului V0V1V2 este data de:
1 x1  x0 x2  x0
A(V0V1V2 )  
2 y1  y0 y 2  y0

Structurile relationale pentru modelul 3SST sunt date in Figura.

Figura. S – segment de dreapta, SO – segment de dreapta orientat, L –
linie, LS – linie simpla, Pg - poligon

Figura. Model relational 3SST

Figura. Evolutia independenta a extremitatilor unui segment

Tabelul (a). Înregistrarea forţată a
evoluţiilor capetelor segmentului
reprezentate în figura. în aceleaşi
instanţe de timp
Punct
Funcţie de evoluţie
P1
a1t+b1
P2
c1t+d1
P1
a2t+b2
P2
c1t+d1
P1
a2t+b2
P2
c2t+d2
P1
a2t+b2
P2
c3t+d3
P1
a3t+b3
P2
c3t+d3
Interval de timp
t  [t1, t2)
t  [t2, t3)
t  [t3, t4)
t  [t4, t5)
t  [t5, t6)

Tabelul (b). Înregistrarea
independentă a evoluţiilor capetelor
segmentului reprezentate în figura.
Punct
Funcţie de evoluţie
Interval de timp
P1
a1t+b1
t  [t1, t2)
P2
c1t+d1
t  [t1, t3)
P1
a2t+b2
t  [t2, t5)
P2
c2t+d2
t  [t3, t4)
P2
c3t+d3
t  [t4, t6)
P1
a3t+b3
t  [t5, t6)
Operatii spatio-temporale

Majoritatea operaţiilor spaţiale şi temporale sunt utilizate în cadrul
implementării operaţiilor corespunzătoare ST.

De exemplu: o interogare ST de tip interval de forma “Care sunt obiectele
care au trecut prin regiunea R în intervalul de timp T?” (operaţie de
intersecţie ST) este soluţionată determinând obiectele ale căror traiectorie
ST a intersectat regiunea definita de R  T.

Astfel, rezolvarea interogării menţionate este redusă la efectuarea
următorilor paşi: determinarea poziţiilor (traiectoriei spaţiale a) obiectelor în
intervalul de timp T (intersecţie temporală de timp interval), şi efectuarea
unei interogări spaţiale de tip interval pe datele spaţiale rezultate la pasul
întâi.
Operatii spatio-temporale

Operatii cu rezultat numeric:


Simple (de exemplu: viteza de deplasare pentru un punct mobil, pe un
interval de timp pe care şi-a păstrat viteza constantă);
De agregare:
• Spaţiale (de exemplu: distanţa parcursă de un obiect mobil pe un interval de timp dat,
distanţa maximă dintre două obiecte mobile pe un interval de timp, aria regiunii totale
acoperite de evoluţia unui obiect de tip regiune pe un anumit interval de timp);
• Temporale (de exemplu: frecvenţa evoluţiei, durata de viaţă a unui obiect);
Operatii spatio-temporale

Operaţii cu rezultat Boolean (predicate):




Topologice: combinaţii ale unui predicat spaţial şi unul temporal (de
exemplu: intersecţia a două poligoane pe un interval de timp dat, incluziunea
unui punct într-un poligon pe un interval de timp);
Metrice (de exemplu: situarea unui punct ST într-un disc cu centrul şi raza
date şi în vecinătatea definită a unei anumite instanţe de timp);
Directionale: combinaţii între predicat direcţional spaţial şi predicat topologic
temporal (de exemplu: punctul P1 este la nord de punctul P2 în intervalul de
timp dat)
Operaţii cu rezultat de tip Direcţie (de exemplu: evoluţia direcţiei de
deplasare a unui obiect mobil pe un interval de timp)
Operatii spatio-temporale

Operatii cu rezultat de tip spaţial, timp sau ST:

De selectare de componentă (componente):
• Spaţiale (de exemplu: proiecţia spaţială a evoluţiei ST, componentele spaţiale la o
anumită instanţă de timp);
• Temporale: proiecţia temporală a evoluţiei ST (rezultatul defineşte intervalul de
viaţă al obiectului);

De agregare:
• Spaţiale (de exemplu: traiectoria spaţială a unui obiect mobil pe un interval de
timp, regiunea totală acoperită de evoluţia unui obiect de tip regiune pe un anumit
interval de timp);
• Temporale (de exemplu: proiecţia temporală a evoluţiei unui obiect mobil,
echivalentă cu intervalul de viaţă al acestuia);
• Spaţio-temporale (de exemplu: evoluţia spaţială a unui obiect mobil pe toată
durata de viaţă a sa).
Operatii spatio-temporale

Plus – operatii pentru evolutiile partitiilor / retelelor.

Observaţie. În selectarea operatorilor în scopul implementării la nivelul unui
SGBD, se cere realizat un compromis între funcţionalitatea oferită de
aceştia şi de numărul lor. Un set prea mare de operatori poate să
îngreuneze însuşirea şi utilizarea lor. Pe de altă parte, însă, trebuie stabilit
setul de operatori astfel încât să asigure obţinerea rezultatelor unor operaţii
care nu au operator corespondent implementat (altfel spus – un set minim
de operatori, cu funcţionalitate completă).






[CP+97] C. Claramunt, C. Parent, M. Theriault, Design Patterns for Spatio-temporal Processes, In IFIP
2.6 Working Conference on Database Semantics, DS7, 1997.
[HW90] G. J. Hunter, I. P. Williamson, The Development of a Historical Digital Cadastral Database, Intl.
Journal of Geographic Information Systems, Vol. 4(2), 1990.
[EA02] B. A. El-Geresy, A. I. Abdelmoty, C. B. Jones, Spatio-Temporal Geographic Information Systems:
A Causal Perspective, ADBIS, p.191-203, 2002.
[La92] G. Langran, Time in Geographical Information Systems, Ed. Taylor & Francis,
London, 1992.
[RM+94] A. Ramachandran, F. MacLoad, S. Dowers, Modeling Temporal Changes in a
GIS Using an Object Oriented Approach, In Proceedings of 6th International Symposium
on Spatial Data Handling, Edinburgh, p. 518-537, 1994.
[CJ98] J. Chen, J. Jiang, Event-based Spatio-Temporal Database Design, In International
Journal of Geographical. Information Systems, Vol. 32(4), p. 105-109, 1998.