Base de dades espacial
Autor: Dr. Joan Nunes. Universitat Autònoma de Barcelona
Promotor: Institut Cartogràfic de Catalunya, 2013
Una base de dades espacial, també anomenada geobase de dades en determinats contextos, és una base de dades que permet emmagatzemar i consultar el component espacial de la informació geogràfica juntament amb el component temàtic de forma unificada en una mateixa base de dades, generalment de tipus relacional o relacional orientada a objectes. En altres paraules, una base de dades espacial permet emmagatzemar i interrogar la geometria dels elements espacials en taules com un atribut més, juntament amb la resta d'atributs de l'entitat representada a la taula.
Per tal de poder emmagatzemar i consultar la geometria com un atribut més d'una taula, les bases de dades espacials necessiten incorporar coneixement espacial per tal de reconèixer i entendre tipus de dades espacials, disposar de mètodes per a processar i resoldre consultes espacials i oferir a l'usuari un llenguatge de consulta de tipus declaratiu, per mitjà del qual l'usuari només hagi d'especificar les condicions que defineixen el resultat, no el procediment per obtenir-lo, com en una base de dades alfanumèrica convencional. Aquesta incorporació de coneixement espacial ha estat possible sobretot en els sistemes de gestió de bases de dades relacionals orientats a objectes, ja que els sistemes de gestió de bases de dades relacionals estrictes presenten limitacions importants per a poder emmagatzemar geometria i desenvolupar llenguatges de consulta espacial.
La definició de tipus de dades espacials, sovint anomenats geometria o element (feature), i d'un llenguatge de consulta espacial ha estat el resultat de nombrosos intents tant des del món dels sistemes d’informació geogràfica (SIG) com des de l'àmbit dels sistemes de gestió de bases de dades (SGBD). L'impuls decisiu ha vingut donat a partir de 2003 amb l'especificació de l'estàndard Simple Feature Access (SFA), revisat el 2004, que és alhora estàndard d'ISO (ISO 19125) i d'Open Geospatial Consortium (OGC). Simple Featue Access especifica un model de dades basat en objectes que defineix l'emmagatzematge comú per a la geometria de les dades geogràfiques, mitjançant formats de text (well-known text, WKT) o binari (well-known binary, WKB), juntament amb propietats, mètodes i predicats espacials, basats en el model de nou interseccions estès dimensionalment (DE-9IM), que són aplicables als objectes espacials reconeguts dins del tipus geometria (punt, línia, polígon, multipunt, multilínia, multipolígon, etc.). Simple Featue Access defineix a més un conjunt d'operadors espacials per a derivar o construir nous objectes espacials a partir dels emmagatzemats. El model de dades estàndard Simple Feature Access troba la seva implementació més idònia en bases de dades espacials per mitjà de sistemes de gestió de bases de dades relacionals orientades a objectes que, gràcies a l'orientació a objectes, permeten l'ús de l'extensió espacial del llenguatge SQL.
L'emmagatzematge de la geometria en bases de dades espacials supera el model clàssic dels sistemes d'informació geogràfica predominant fins a mitjan dècada de 1990, anomenat dual o híbrid i en alguns casos georelacional (Morehouse, 1985), que emmagatzema la geometria dels elements espacials en fitxers, generalment amb formats de propietat de cada programa, i només els atributs en bases de dades, de tipus relacional en la major part dels casos.
Les bases de dades espacials suposen l'adopció efectiva de l'arquitectura client-servidor en l'àmbit dels sistemes d'informació geogràfica, la qual fa possible alguns avenços fonamentals respecte de l'emmagatzematge de les dades espacials en fitxers:
- accés concurrent i edició simultània multiusuari de les dades espacials.
- continuïtat geogràfica de les dades espacials.
- gestió de grans volums d'informació.
- consulta espacial mitjançant un llenguatge declaratiu general que permet integrar condicions espacials i temàtiques en una mateixa consulta.
- tractament homogeni de tota la informació, tant espacial com temàtica, amb els avantatges d'accés unificat a les dades, aplicació automàtica de restriccions d'integritat, gestió d'usuaris i seguretat, gestió de concurrència, control de transaccions i capacitat de recuperació pròpies dels sistemes de gestió de bases de dades.
- independència de les aplicacions respecte de la gestió i emmagatzematge de dades.
Amb la utilització de bases de dades espacials, els sistemes d'informació geogràfica esdevenen aplicacions client de les bases de dades espacials, per a la presentació, consulta i anàlisi de la informació geoespacial, per bé que les bases de dades espacials proporcionen per si mateixes capacitat de manipulació i consulta mitjançant un llenguatge de consulta espacial.
SUMARI
- Origen
- Informació espacial. Models de dades espacials
- Emmagatzematge de geometria en bases de dades
3.1 Emmagatzematge en taules normalitzades
3.2 Emmagatzematge topològicament integrat
3.3 Emmagatzematge en objectes binaris grans
3.4 Emmagatzematge com a objectes espacials - Llenguatge de consulta espacial. Consultes i predicats espacials
- Funcions espacials
- Indexació espacial
- Programari de gestió de bases de dades espacials
- Aplicacions
- Temes relacionats
- Referències
- Lectures recomanades
Origen
Els primers intents d'implementació de sistemes d'informació geogràfica que emmagatzemessin la geometria dels elements espacials en bases de dades, daten de mitjans de la dècada de 1980 (Lorie and Meier, 1984; Guptill, 1987; Bundock, 1987; Van Roessel, 1987; Waugh and Healey, 1987). La majoria d'aquests intents estaven basats en l'emmagatzematge de les coordenades i topologia dels elements geomètrics vectorials mitjançant taules normalitzades d'un sistema de gestió de bases de dades relacional. Alguns dels intents van arribar a tenir existència com a programes de SIG comercials basats en sistemes de gestió de bases de dades relacionals, com per exemple SYSTEM9 de Prime Computers, o orientats a objectes, per exemple, TIGRIS d'Intergraph Corporation (Herring, 1987), però van tenir un grau d'acceptació i d'implantació força limitat en comparació amb els SIG basats en el model dual clàssic.
A mitjan dècada de 1990 van aparèixer els primers productes comercials de gestió de bases de dades espacials, basats en sistemes de gestió de bases de dades relacionals, plenament operatius i amb un grau significatiu de penetració del mercat. L'aparició d'aquests productes fou el resultat d'esforços convergents però paral·lels dels fabricants de programari de SIG i dels de sistemes de gestió de bases de dades com a reacció al volum creixent d'informació geoespacial a manejar pels sistemes d'informació geogràfica i a les expectatives de creixement del mercat de les bases de dades resultants de l'evolució d'aquestes cap a la gestió de tipus de dades cada cop més complexos (imatges, multimèdia, dades espacials,...). Així, el 1994 aparegué Spatial Data Engine (SDE, actualment ArcSDE integrat dins d'ArcGIS Server) d'ESRI, basat inicialment en el SGBD relacional Oracle i posteriorment ampliat a d'altres com Informix, DB2, SQL Server i altres. Poc després Oracle llençaria l'extensió espacial del seu gestor de bases de dades que, sota diferents noms (Spatial Data Option -SDO-, Oracle Spatial Cartridge,...) arribaria a l'actual Oracle Spatial.
El desenvolupament de les aplicacions de SIG a Internet a finals de la dècada de 1990 i la recerca creixent de solucions per a augmentar significativament la interoperabilitat entre els programes de SIG, així com la incorporació plena dels SIG dins del conjunt de tecnologies de la informació mitjançant l'adopció de tecnologia informàtica d'ús general, van facilitar que s'intensifiqués la recerca de solucions d'implementació de bases de dades espacials completes, amb predicats, operadors i llenguatges de consulta espacial (Egenhofer, 1994; Worboys, 1994; Adam and Gangopadhyay, 1997), més enllà de l'emmagatzematge de geometria en taules, per tal de poder gestionar, recuperar i servir grans volums de dades geoespacials sovint distribuïts de forma ràpida i eficient i per mitjà de models de dades senzills atesa la diversitat de possibles aplicacions clients que havien de processar-les. Aquest èmfasi en models de dades simples i rapidesa a recuperar i servir la informació resulta consistent amb l'evolució dels SIG a principis de la dècada de 2000 cap al proveïment de serveis d'informació geoespacial a través del web per a un conjunt massiu d'usuaris no experts, com és el públic en general.
La creació d'Open GIS Consortium (actualment Open Geospacial Consortium, OGC) el 1994 i la del comitè tècnic ISO/TC 211 Geographic information/Geomatics aquest mateix any responen igualment a aquesta tendència vers la interoperabilitat i estandardització que esdevindria general a finals de la dècada en bona part pel treball d'ambdues organitzacions en la definició d'estàndards geoespacials. Així, pel que fa a estàndards d'implementació de bases de dades espacials, OGC publicà ja el 1999 una primera especificació per estendre el llenguatge SQL per a aplicacions geoespacials (OGC, 1999) i les especificacions per a la implementació d'un model de dades basat en elements simples (Simple Features) mitjançant objectes CORBA, OLE/COM i en SQL. Posteriorment el 2003 es publicaria l'especificació de l'estàndard ISO/TC 211 19125 Simple Feature Access (SFA), elaborat i adoptat conjuntament amb OGC (vegeu OGC, 2011a per a l'última versió), del qual les especificacions CORBA, OLE/COM i SQL esmentades serien versions d'implementació, si bé des de 2011 OGC només manté l'especificació d'implementació SQL com a part de l'estàndard (OGC 2011b).
Paral·lelament, des de l'àmbit dels sistemes de gestió de bases de dades a finals de la dècada de 1990 i principis de la de 2000 s'estava elaborant la nova versió del llenguatge de consulta de bases de dades Structured Query Language (SQL), que finalment aparegué el 2006 com a estàndard ISO/IEC 9075, el qual es complementà amb l'estàndard ISO/IEC 13249 SQL Multimedia and Application Packages, que defineix extensions per al maneig d'altres tipus de dades, entre les quals les espacials (ISO/IEC, 2006). Versions oficioses de l'esborrany de l'estàndard van circular, però, des de 2002.
A partir de la publicació de l'estàndard Simple Feature Access (SAF) d'ISO i OGC, que resol, per si mateix o a partir de les aportacions que recull, bona part de les necessitats per a implementar tipus de dades, predicats i operadors espacials i llenguatges de consulta espacial, així com de l'ampliació espacial del llenguatge estàndard de consulta SQL han aparegut nombroses extensions espacials de la majoria de sistemes de gestió de bases de dades existents, tant comercials (el ja esmentat Oracle Spatial, Spatial Extender en el cas de DB2 d'IBM; SQL Server de Microsoft des de 2008 o Spatial Query Server per a Sybase, entre d'altres) com de programari lliure (PostGIS en el cas de PostgreSQL, SpatiaLite per a Sqlite o MySQL encara que en aquest no de forma estàndard). Així mateix, s'han creat nous sistemes de gestió de bases de dades directament espacials (per exemple, SpaceBase) i els programes de SIG que implementen programari intermediari de gestió de bases de dades espacials s'han mantingut (ArcGIS Server d'ESRI o Smallworld VMDS) o ampliat.
Conseqüentment, l'acceptació i ús de les bases de dades espacials entre els usuaris ha crescut extraordinàriament a partir de mitjans de la dècada de 2000, especialment a partir de la disponibilitat de gestors de bases de dades espacials de programari lliure madurs, i a mesura que ha augmentat la disponibilitat d'una comunitat d'usuaris que ha adoptat la nova tecnologia. Avui la majoria d'organitzacions i molts usuaris personals utilitzen bases de dades espacials per als seus sistemes corporatius o projectes.
Informació espacial. Models de dades espacials
La informació espacial comprèn diverses maneres de definir, descriure i referir-se a les formes, posicions i relacions en l'espai. Algunes de les principals maneres o mètodes de descripció espacial són:
- geometria: descriu forma, extensió i posició absoluta, mitjançant coordenades.
- topologia: descriu relacions i posicions espacials relatives independents de la forma, com és ara la contigüitat.
- direcció: descriu posicions relatives per mitjà d'angles.
- ordre: descriu relacions espacials i posicions relatives segons una successió o una jerarquia, per exemple la relació de contenció o la partició recursiva d'un espai en subdivisions successives.
Alguns d'aquests mètodes proporcionen descripcions mètriques (és a dir, quantificades), per exemple la geometria i la direcció) mentre que d'altres no, per exemple la topologia o l'ordre. Segons el tipus de consulta o, en general, d'estudi o d'ús que es vulgui fer de la representació espacial resulta més convenient un mètode de descripció o un altre. És important notar que no hi ha un conjunt mínim de representacions espacials a partir del qual es puguin derivar tots els altres i que no hi ha un mètode de descripció espacial que sigui universal i suficient per si sol per a resoldre tots els tipus de necessitats o de possibles consultes espacials (Shekhar, 2003).
Cada un dels diferents tipus de descripció espacial pot estar explícitament inclòs en les dades espacials emmagatzemades o es pot calcular a partir de la descripció espacial efectivament emmagatzemada (per exemple, la topologia es pot calcular a partir de la geometria). Entre els models de dades espacials emprats més habitualment en SIG, n'hi ha que només emmagatzemen informació geomètrica (els models de dades vectorials simples com la llista de coordenades o el diccionari de punts), n'hi ha que emmagatzemen informació geomètrica i informació topològica (el model de dades vectorial amb estructura topològica arc-node i polígon-arc) i n'hi ha que es basen en una geometria regular fixa que fa innecessari emmagatzemar informació geomètrica o topològica ja que tot es pot deduir a partir de l'ordre i d'alguns paràmetres generals de cada conjunt de dades (el model de dades ràster).
Seguint la tendència general a facilitar la interoperabilitat, per a definir l'estàndard de representació espacial i d'implementació de bases de dades espacials Simple Feature Access, s'han adoptat els models de dades espacials amb el contingut espacial més senzill, comú i fàcilment comprensible per tot tipus de programari servidor o client. En concret, el model de dades vectorial d'elements simples i el model de dades ràster. En el model de dades vectorial d'elements simples cada element és definit únicament mitjançant la seva geometria (la llista de coordenades) i és independent de tot altre element. El model de dades ràster, per altra banda, és comú al model de dades de les imatges digitals, l'emmagatzematge de les quals en bases de dades, si bé sense operadors espacials, era també una de les ampliacions en curs dels sistemes de gestió de bases de dades.
Altrament, la informació topològica en la major part dels casos, tret de les aplicacions d'anàlisi de xarxes, fou introduïda (Corbett, 1975) i s'ha utilitzat bàsicament en els SIG com a recurs per a comprovar i validar la coherència espacial de la geometria emmagatzemada. Finalitat per a la qual no és necessari emmagatzemar permanentment la informació topològica, ja que es poden implementar procediments de validació topològica independents de l'emmagatzematge.
En aquest sentit, la lògica seguida en la implementació de bases de dades espacials ha estat de mantenir l'emmagatzematge simple i implementar la funcionalitat addicional en forma d'operadors a aplicar en funció de les necessitats de consulta o de processament a resoldre, tal com de fet era ja la tendència a partir de la difusió generalitzada de formats de dades simples com el format shapefile, que ESRI va obrir al públic a mitjan dècada de 1990. Aquest fet reflecteix també la superior capacitat de processament dels ordinadors a finals de la dècada de 1990, en comparació amb la de mitjan dècada de 1980.
Emmagatzematge de geometria en bases de dades
Les aproximacions seguides per a emmagatzemar geometria en les taules de les bases de dades han estat:
- emmagatzematge en taules normalitzades
- emmagatzematge topològicament integrat
- emmagatzematge en objectes binaris grans
- emmagatzematge com a objectes espacials
Totes menys la darrera són anteriors a la definició de l'estàndard Simple Feature Access i les dues primeres han estat abandonades.
Emmagatzematge en taules normalitzades
L'emmagatzematge en taules normalitzades deriva de l'aplicació estricta del model de dades relacional de bases de dades, que exigeix que tot valor sigui atòmic (és a dir, un sol valor per a cada registre en cada columna, no llistes). Així per a emmagatzemar la geometria d'elements poligonals, donat que el nombre de contorns que defineixen cada polígon és variable i donat que el nombre de vèrtexs (parells de coordenades) en cada contorn també, es necessiten diverses taules i que cada vèrtex s'emmagatzemi com un registre individual, ja que altrament no es compliria la primera forma normal (valors atòmics) del model de dades relacional.
L'emmagatzematge en taules normalitzades de desenes de milers de polígons amb milers de vèrtexs cada un, com solen tenir les dades cartogràfiques, resulta clarament ineficient, tant pel nombre de registres de la taula de vèrtexs, com pel fet que la recuperació de la llista de coordenades que defineix la forma de cada polígon requereix unir relacionalment les diverses taules per a cada un dels polígons.
Emmagatzematge de geometria en taules normalitzades en una base de dades relacional.
Deixant a part les formulacions teòriques i sistemes experimentals, cap sistema de gestió de bases de dades operatiu implementà aquesta solució donada l'elevada ineficiència.
Emmagatzematge topològicament integrat
L'emmagatzematge topològicament integrat fou una solució adoptada per a resoldre la relació espacial entre els elements espacials, deixant a part quina fos la solució per a l'emmagatzematge de la geometria dels elements espacials en taules.
La finalitat era poder relacionar els elements espacials de diferents classes o capes sense necessitat d'haver de calcular la intersecció geomètrica cada vegada que es requeria fer una consulta de base de dades. Donat que no es disposava d'operadors espacials a les bases de dades, la solució ideada fou intersecar totes les capes d'informació prèviament o en el moment d'ingrés a la base de dades, de tal manera que la correspondència entre elements fos ja explícita es pogués emmagatzemar mitjançant codis en taules i la resolució de consultes es resolgués a través d'operacions de correspondència entre taules.
En general fou una solució experimental efímera assajada a finals de la dècada de 1980 (per exemple en el cas de SYSTEM9 o de TIGRIS).
Emmagatzematge en objectes binaris grans
La forma desitjable d'emmagatzemar la geometria dels objectes espacials en taules és poder emmagatzemar la geometria com una columna més de la taula on s'emmagatzemen les dades de l'entitat representada.
Fins a l'ús de sistemes de gestió de bases de dades relacionals orientats a objectes que permeten emmagatzemar la geometria mitjançant objectes espacials, la manera més senzilla d'emmagatzemar geometria en una columna d'una taula d'una base de dades relacional ha estat l'emmagatzematge a l'engròs de la llista de coordenades que defineix la forma de cada element espacial en un camp de tipus objecte binari gran (binary large object, BLOB), el qual permet emmagatzemar dades no alfanumèriques voluminoses, com és ara imatges, so, vídeo o geometria, en un camp d'una taula d'un sistema de gestió de bases de dades.
Emmagatzematge de geometria en taules normalitzades en una base de dades relacional.
Un camp de tipus BLOB consisteix en un bloc de dades gran que el gestor de bases de dades no pot interpretar internament però que pot ser referenciat, modificat i recuperat com un tot i transferit a un client capaç d'entendre'n el contingut. L'emmagatzematge a l'engròs en objectes binaris grans ha estat una solució factible per a implementar bases de dades espacials, si bé es tracta d'un emmagatzematge passiu ja que el sistema de gestió de bases de dades no pot fer res amb la geometria així emmagatzemada i tot recau en la disponibilitat d'un client per a interpretar i processar el contingut del camp de tipus BLOB. Aquest és el tipus d'emmagatzematge adoptat des de mitjan dècada de 1990 per Spatial Data Engine(SDE) d'ESRI, que s'ha mantingut posteriorment en l'estructura de geobase de dades d'ArcGIS. En aquest cas, la visió conceptual d'alt nivell, orientada a objectes, la proporciona el programari intermediari intèrpret, ArcSDE, que serveix les dades espacials en forma d'objectes al programari de SIG client ArcGIS, mentre que a baix nivell l'emmagatzematge és passiu, a l'engròs, en una base de dades relacional.
Emmagatzematge com a objectes espacials
El gran avantatge del model Simple Features Access és que defineix objectes espacials que poden ser implementats en una base de dades relacional orientada a objectes com un tipus de dades espacial gràcies a l'orientació a objectes. En aquest cas el tipus de dades espacial és un objecte espacial amb mètodes associats que permeten el reconeixement i processament de la geometria per part del propi sistema de gestió de bases de dades. L'emmagatzematge físic en si de la geometria és quelcom relativament indiferent per a l'usuari, ja que, com en el cas de les dades alfanumèriques convencionals, se n'ocupa el sistema de gestió de bases de dades i proporciona a l'usuari una visió d'alt nivell d'objectes espacials que s'emmagatzemen en taules, essent la geometria de l'objecte espacial una columna més de la taula que pot ser definida, consultada i manipulada per mitjà del llenguatge de consulta declaratiu unificat del sistema de gestió de bases de dades.
És en aquest cas que es pot parlar pròpiament de base de dades espacial, mentre que en els anteriors només es tracta d'emmagatzematge passiu dels valors alfanumèrics de coordenades, entesos només de forma alfanumèrica. Aquest ha estat el gran avanç de les bases de dades espacials des de mitjan dècada de 2000, que ha esdevingut predominant en la implementació de nombrosos productes de programari de gestió de bases de dades espacials, comercials o lliures. En particular l'existència de l'estàndard Simple Feature Access n'ha afavorit la ràpida adopció gràcies a la disponibilitat d'una especificació d'implementació que, pel fet de ser un estàndard, ha permès que les implementacions dels diferents programes comparteixin un nucli comú i siguin interoperables, la qual cosa ha reforçat l'adhesió majoritària a l'estàndard.
La definició de la geometria dels objectes espacials en el cas de l'estàndard Simple Feature Access es fa per mitja dels formats de text (well known text, WKT) o binari (well known binary, WKB). Per mitjà d'aquests formats s'especifica el tipus d'objecte geomètric d'entre els definits a l'estàndard (point, linestring, polygon, etc.) i la llista de coordenades corresponent seguint les convencions del format, com en els exemples següents:
POINT (30 10)
LINESTRING (30 10, 10 30, 40 40)
POLYGON ((30 10, 10 20, 20 40, 40 40, 30 10))
Els sistemes de gestió de bases de dades espacials que implementen l'estàndard Simple Feature Access (per exemple, PostGIS) o ofereixen plena compatibilitat (per exemple, Oracle Spatial) proporcionen funcions de conversió del format WKT o WKB a l'emmagatzematge intern dels objectes espacials i viceversa per a facilitar l'intercanvi de dades i fer la geometria llegible.
Llenguatge de consulta espacial. Consultes i predicats espacials
El llenguatge de consulta espacialSQL-MM spatial permet expressar consultes espacials, com per exemple "selecciona les parcel·les adjacents a la parcel·la amb adreça Balmes 32", de forma declarativa com en el cas de les consultes alfanumèriques convencionals del llenguatge SQL bàsic:
SELECT M.adreça
FROM parcela L, M
WHERE ADJACENT(L,M)
AND L.adreça = 'Balmes 32'
Això és possible gràcies al fet que l'estàndard Simple Features Access defineix predicats espacials, com ADJACENT a l'exemple, que poden ser avaluats com a cert o fals entre dos objectes espacials per mitjà d'operacions espacials que l'usuari no ha d'especificar, a diferència de les consultes espacials típiques dels programes de SIG en què l'usuari indica el procediment per a resoldre la consulta.
Els predicats espacials permeten avaluar relacions espacials entre els elements espacials emmagatzemats en una o més taules i retornen els registres corresponents a la selecció per condició espacial. Cada predicat correspon a una relació espacial determinada. Les relacions espacials normalitzades que l'estàndard Simple Features Access permet implementar com a predicats espacials són les nou relacions (igual, disjunt, interseca, toca, creua, dins, conté, cavalca, cobreix, és cobert) que deriven del model de nou interseccions estès dimensionalment (DE-9IM), ideat per Egenhofer, Clementini i di Felice (1994) a partir de les nou possibles interseccions entre l'interior, el límit i l'exterior de dos elements geomètrics en l'espai de dues dimensions.
Per mitjà dels predicats espacials el llenguatge SQL ampliat espacialment permet expressar i resoldre de manera uniforme, amb la mateixa sintaxi, consultes alfanumèriques, espacials i combinacions d'ambdues, inclosa la unió espacial. És gràcies a l'existència d'un llenguatge de consulta espacial, i als mètodes i funcions espacials associades als objectes del tipus de dades espacial, que el sistema de gestió de bases de dades esdevé de forma efectiva un sistema de gestió de bases de dades espacials i pot resoldre gran part de les operacions bàsiques d'interrelació i de selecció espacial que fins aleshores només el programari de SIG podia realitzar.
No totes les bases de dades espacials permeten, però, aquest tipus de consultes. Algunes només implementen l'estàndard Simple Features Access de forma limitada i altres senzillament no l'implementen i/o no es basen en el llenguatge SQL.
Funcions espacials
Les bases de dades espacials que implementen l'estàndard Simple Features Access permeten realitzar moltes més operacions espacials que les consultes basades en predicats espacials que retornen respostes "sí" o "no", útils per a fer seleccions basades en relacions espacials. Això és possible gràcies al fet que els objectes espacials definits per l'estàndard, com és propi de l'orientació a objectes, posseeixen mètodes associats; és a dir funcions, en aquest cas espacials, que poden executar-se a partir de determinats esdeveniments i retornen resultats escalars o espacials segons els casos. Entre les funcions espacials que poden realitzar les bases de dades espacials, mitjançant la implementació de l'estàndard SFA, hi ha les següents:
- Funcions de mesura espacial: calculen longituds, àrees, distàncies, etc.
- Funcions de manipulació espacial: permeten modificar la geometria dels elements emmagatzemats o crear-ne de nous. Entre aquestes funcions hi ha les operacions clàssiques d'anàlisi cartogràfica dels SIG: la superposició, que calcula la intersecció geomètrica dels elements, el càlcul d'àrees d'influència, etc.
- Funcions constructives: permeten crear nous elements a partir d'altres, especificant per mitjà de consultes SQL quins elements, parts o vèrtexs dels elements existents s'han d'emprar per a crear els nous elements.
- Funcions derivades: retornen informació específica d'un element, com el centre d'un cercle.
Les funcions espacials, igual que els predicats espacials de consulta, s'integren en el llenguatge SQL i s'apliquen mitjançant sentències de consulta formulades d'acord amb la sintaxi del llenguatge SQL, com qualsevol altra consulta convencional clàssica.
Per tal de poder avaluar les relacions espacials en què es basen els predicats espacials, igual que per a poder aplicar les funcions espacials per realitzar càlculs derivats de la geometria o generar noves geometries, el programari de gestió de bases de dades espacials ha d'implementar, igual que el programari de SIG, nombrosos algorismes d'operacions espacials i optimitzar-los per a grans volums de dades. En el cas de l'estàndard això s'aconsegueix mitjançant els mètodes associats als objectes espacials. La diferència respecte del programari de SIG convencional és el fet que l'usuari no ha d'indicar, seguir o aplicar procediments, simplement declarar les condicions i la funció que proporcionen el resultat desitjat, de la mateixa manera que en una consulta alfanumèrica convencional l'usuari no ha d'indicar com ha de fer el programa la unió relacional entre taules.
Gràcies a les consultes i les funcions espacials els sistemes de gestió de bases de dades espacials poden realitzar directament, per mitjà de sentències del llenguatge SQL, moltes de les operacions bàsiques de geoprocessament, per a l'anàlisi i manipulació de dades espacials, pròpies del programari de SIG convencional.
Indexació espacial
En els sistemes de gestió de bases de dades la utilització d'índexos per a cercar i recuperar les dades amb rapidesa i eficiència és cabdal per a poder gestionar grans volums de dades i oferir resposta ràpida a consultes que poden implicar desenes o centenars de milers de registres a través de múltiples taules que cal relacionar. Així són habituals en bases de dades les estructures d'indexació com arbres binaris (B-tree) que subdivideixen recursivament en dues parts el conjunt de dades en un cert nombre de nivells, organitzen jeràrquicament les referències d'aquests nivells en forma d'arbre, i assignen a cada element o registre de les dades la referència del subconjunt o nivell a què pertany, de manera que la cerca i recuperació s'acceleren substancialment recorrent l'arbre en lloc de recórrer el conjunt de les dades.
Semblantment, en els sistemes de gestió de bases de dades espacials la indexació és igualment decisiva, o potser encara més pel major volum de les dades. En el cas de les dades espacials, però, els mètodes d'indexació convencionals emprats per a les dades alfanumèriques no serveixen ja que aquestes són unidimensionals (e.g., es poden ordenar al llarg d'una única seqüència), mentre que les dades espacials són multidimensionals, 2D en el cas més bàsic.
Així, ha calgut idear mètodes d'índexació espacial adequats per a indexar les geometries dels elements espacials a efectes de poder trobar-los i recuperar-los amb rapidesa, i sobretot a efectes de filtrar i descartar els elements innecessaris a l'hora de poder realitzar les operacions de manipulació espacial com és ara interseccions, o les consultes espacials que, de fet, es basen també en interseccions.
L'ús d'índexos espacials no és nou, el programari de SIG n'ha estat utilitzant des de fa dècades, pràcticament des del principi (l'índex de Morton, per exemple es va definir en el primer SIG conegut, el Canadian Geographic Information System, iniciat el 1962). En els sistemes de gestió de bases de dades espacials, però, els índexos espacials adquireixen encara més rellevància per tal de poder resoldre consultes espacials complexes amb rapidesa,
Hi ha molts tipus d'índexos espacials. Els més coneguts són els basats en corbes d'ompliment com les corbes de Lesbesgue, Peano o Hilbert (corbes Z, N o P, respectivament), quadrícules (grid), arbres quaternaris o octals, o arbres R basats en el rectangle envoltant mínim (minimum bounding rectangle, MBR) de cada objecte espacial. Els índexos espacials més utilitzats són l'arbre R, la quadrícula i l'arbre quaternari.
L'objectiu de tots els índexos espacials és reduir la multidimensionalitat de les dades espacials a referències unidimensionals que es puguin ordenar i fer servir com a índex de cerca ràpida per a identificar en quina regió de l'espai es troba un objecte espacial determinat.
Programari de gestió de bases de dades espacials
Els sistemes de gestió de bases de dades són programari de propòsit general. El fet que puguin admetre la definició de tipus de dades abstractes i llenguatges de consulta ampliats, com en el cas dels sistemes de gestió de bases de dades relacionals orientats a objectes, no vol dir que el coneixement espacial en forma de tipus de dades espacials, predicats i funcions específiques estiguin ja definits i implementats en el sistema de gestió de bases de dades general.
El programari de gestió de bases de dades espacials, tant si es tracta de l'extensió espacial d'una base de dades relacional o relacional orientada a objectes (per exemple, Oracle Spatial en el cas d'Oracle o PostGIS en el cas de PostgreSQL), com si es tracta de programari de SIG servidor de dades espacials (per exemple ArcSDE d'ESRI), és en tots els casos programari intermediari entre el sistema de gestió de bases de dades i el programari d'aplicacions espacials, com és ara SIG, CAD, multimèdia, o altres.
El programari de gestió de bases de dades espacials és el programari intermediari que conté els recursos per a resoldre les necessitats de gestió de les dades espacials pel que fa a tipus de dades espacials i mètodes associats, llenguatge de consulta espacial, algorismes per a efectuar les operacions espacials i estructures de dades per a crear índexos espacials juntament amb els mètodes d'accés corresponents. A més, en tant que programari intermediari inclou també les interfícies per a comunicar-se d'una banda amb el sistema de gestió de bases de dades i d'altra banda amb les aplicacions espacials.
En relació a les aplicacions espacials, i en particular en relació al programari de SIG, el programari de gestió de bases de dades espacials, dit breument les bases de dades espacials, pot realitzar, tal com s'ha vist a l'apartat de funcions espacials, moltes de les funcions bàsiques dels programes de SIG tradicionals directament per mitjà de sentències del llenguatge SQL, i pot fer-ho de manera uniforme i integrada amb el tractament de la resta de dades, i de forma més eficient sobre volums de dades molt més grans. A més, pel fet de proporcionar a l'usuari una visió d'alt nivell basada en objectes o entitats i d'emprar un llenguatge declaratiu, pot resultar més natural i de més fàcil aprenentatge que el programari de SIG basat en models de dades més específics i implementacions idiosincràsiques. Altrament, per als professionals de les tecnologies de la informació les bases de dades resulten més familiars i estàndard.
Tot això planteja un possible canvi de funció del programari de SIG en el futur, de fet ja en els darrers anys, en el sentit de cedir la gestió de les dades espacials, fins ara una de les funcions importants dels SIG, a les bases de dades espacials i mantenir com a funcions pròpies i raó de ser la visualització i edició cartogràfica i l'anàlisi especialitzada de les dades espacials, ja que la més bàsica també pot ser assumida per les bases de dades espacials. En aquest sentit el programari de SIG actuaria, actua ja, com a client superior o façana (front end) especialitzada de les bases de dades espacials.
Aplicacions
Les bases de dades espacials són d'especial aplicació en el camp del sistemes d’informació geogràfica i per tant per a totes les disciplines científiques i activitats professionals que utilitzen informació geoespacial. De fet, els SIG han estat la principal tecnologia que ha motivat i impulsat la recerca i finalment la implementació de programari de gestió de bases de dades espacials. Més enllà de l'ús professional, la informació geoespacial té un interès creixent en tots els àmbits de la vida social i quotidiana, per mitjà de la cartografia web i dels serveis basats en la localització. Per a aquests usos no professionals les bases de dades espacials són també d'especial aplicació i faciliten el desenvolupament d'aplicacions web, ja que no es requereixen pròpiament aplicacions de SIG web, més complexes.
D'altra banda, les dades espacials no es limiten a la informació geoespacial. Són d'utilització també en altres disciplines científiques com medicina, biologia mol·lecular o astronomia. Les bases de dades espacials tenen per tant un elevat potencial d'utilització en moltes disciplines científiques, com en té també la visualització científica de dades. Igualment, en el món dels negocis, les bases de dades espacials tenen interès en productes de caràcter visual com videojocs o altres tipus d'informació multimèdia.
Temes relacionats
- Cartografia web.
- Corba d'ompliment.
- Model de dades ràster.
- Model de dades vectorial.
- Model de nou interseccions estès dimensionalment.
- Servei basat en la localització.
- Simple Feature Access.
- Sistemes d’informació geogràfica.
- Unió espacial.
Referències
Bundock, M. (1987) "An integrated DBMS approach for geographic information systems", Proceedings of AUTOCARTO 8, Falls Church, Virginia: ASPRS.
Corbett, J.P. (1975) "Topological principles in cartography", Proceedings of AUTOCARTO 2, Reston, Virginia: ASPRS.
Egenhofer, M. (1994) "Deriving the composition of binary topological relations", Journal of Visual Languages Computing, 5(2), 133–149.
Egenhofer, M.; Clementini, E. and di Felice, P.A. (1994) "Topological relations between regions with holes", International Journal of Geographical Information Systems, 8(2), 129-142.
Guptill, S.C. (1987) "Desirable characteristics of a spatial database management system", Proceedings of AUTOCARTO 8, Falls Church, Virginia: ASPRS.
Herring, J.R. (1987) "TIGRIS: topologically integrated geographic information system", Proceedings of AUTOCARTO 8, Falls Church, Virginia: ASPRS.
ISO/IEC (2006) ISO/IEC 13249-3:2006(E) – Text for FDIS Ballot Information technology - Database languages - SQL Multimedia and Application Packages - Part 3: Spatial, Geneva, Switzerland: International Organization for Standardization (ISO)
Lorie, R.A. and Meier, A. (1984) "Using a relational DBMS for geographical databases", Geo-Processing, 2, 243.
Morehouse, S. (1985) "ARC/INFO: a geo-relational model for spatial information", Proceedings of AUTOCARTO 7, Falls Church, Virginia: ASPRS.
OGC (1999) OpenGIS Simple Features Specification for SQL (Revision 1.1). Wayland, MA: OpenGIS Consortium Inc..
OGC (2011a) OpenGIS Implementation Standard for Geographic information - Simple feature access - Part 1: Common architecture (Version 1.2.1). Wayland, MA: Open Geospatial Consortium.
OGC (2011b) OpenGIS Implementation Standard for Geographic information - Simple feature access - Part 2: SQL option (Version 1.2.1). Wayland, MA: Open Geospatial Consortium.
Shekhar, S. and Chawla, S. (2003) Spatial Databases: A Tour, Upper Saddle River, NJ: Prentice Hall.
Van Roessel, J.W. (1987) "Design of a spatial data structure using the relational normal forms", International Journal of Geographical Information Systems, 1, 33-50.
Waugh, T.C. and Healey, R.G. (1987) "The GEOVIEW design. A relational database approach to geographical data handling", International Journal of Geographical Information Systems, 1, 101-118.
Worboys, M.F. (1994) "A Unified Model for Spatial and Temporal Information", Computer Journal, 37(1), 26–34.
Lectures recomanades
Arctur, D. and Zeiler, M. (2004) Designing Geodatabases: Case Studies in GIS Data Modeling, Redlands, CA: ESRI Press.
Rigaux, P.; Scholl, M. and Voisard, A. (2002) Spatial Databases with Application to GIS, New York: Morgan-Kauffman Publishers.
Shekhar, S. and Chawla, S. (2003) Spatial Databases: A Tour, Upper Saddle River, NJ: Prentice Hall.
Zeiler, Michael (2010). Modeling Our World: The ESRI Guide to Geodatabase Concepts. 2nd edition. Redlands, CA: ESRI Press.