Introducció al PostGIS. Utilització amb gvSIG i QGIS.

PostGIS es una base de dades amb capacitat geogràfica basada en Postgres. L’avantatge d’aquesta base de dades es que es de codi obert i disponible de forma gratuïta, be realment aquest no es el seu gran avantatge. El seu gran avantatge es la capacitat de gestió de bases de dades grans i el processos espacials que es poden fer amb aquestes. Per a que ens entenguem, el temps de resposta es molt mes ràpida que qualsevol GIS d’escriptori quan treballem amb capes amb moltes dades. Es a dir quan un GIS d’escriptori se’ns queda curt postGIS ens pot ajudar a realitzar tasques i funcions que no podríem fer amb el GIS d’escriptori o be ens resultarien terriblement lentes. Açò es degut a que els gestors de bases de dades treballen d’una forma més eficient. No obstant cal dir que postGIS no ve a eliminar el GIS d’escriptori sino que els complementa. Per a traure tot el rendiment a postGIS cal saber el llenguatge SQL, el principiants no cal que s’esglaien, hi ha molta ajuda, tant de Postgres com  de postGIS. A internet es poden trobar diversos manuals tant en castellá com en anglés.

Els usuaris de GIS poden donar el salt a postGIS be perquè necessiten funcionalitats que no estan disponibles en el GIS d’escriptori o be perquè necessiten gestionar les seus dades espacials d’una forma eficient on postGIS pot ser el magatzem perfecte per a les bases de dades espacials. Fins a la versió 2.0 no es podien emmagatzemar dades raster en postGIS, tan sols es podien emmagatzemar dades vectorials. Amb la versió 2.0 ja es possible emmagatzemar dades raster. La versió 2.0 doncs ens proporciona una eina completa per a emmagatzemar totes les nostres dades GIS i alfanumèriques.

Recordem doncs que PostGIS es una base de dades amb capacitat geogràfica basada en Postgres. Així doncs caldrà instal·lar primer postgres en la nostra màquina i tot seguit postGIS (hi ha instal·lador tant per a Windows com Linux). Abans de dicar-nos a treballar caldrà assegurar-nos de que hem creat un usuari amb drets per a controlar les bases de dades (postgres pot crear  usuaris amb diversos rols o drets d’accés a les bases de dades). Per als que empren l’instal·lador, aquest ens creara l’usuari, per als que l’instal·len d’un repositori cal crear els usuaris y el template the postGIS. Aixó es fa de la següent forma:

1. Obrim el terminal
2. Ens convertim en usuaris postgres

$ sudo su postgres

3. Si no hem creat un super usuari per accedir a postgres el podem crear ara. Ho farem donant dret d’accés a l’usuari de la següent forma

$ createuser [username]

O crear-lo de forma interactiva

$ createuser –interactive joe
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n

4. Crearem una nova base de dades anomenada “template_postgis”

$ createdb -O [username] template_postgis -E UTF-8

5. PostGIS requereix de la instal·lacio en la base de dades del llenguatge pl/pgSQL.

$ createlang plpgsql template_postgis

6. Carregar els  PostGIS spatial types per a PostgreSQL (son les funcionalitats espacials de postGIS) y els sistemes de referencia espacial. “postgis.sql” y “spatial_ref_sys.sql” son part de la instal·lació de PostGIS, els podem trtobar en la carpeta:”/usr/share/postgresql/contrib/postgis-2.0/”

Versión 2.0
$ psql -d template_postgis -f /usr/share/postgresql/contrib/postgis-2.0/postgis.sql
$ psql -d template_postgis -f /usr/share/postgresql/contrib/postgis-2.0/spatial_ref_sys.sql

per a postgres 9.1 endavant tan sols:

 psql -d [yourdatabase] -c “CREATE EXTENSION postgis”

Para instalar el paquete de topología

psql -d [yourdatabase] -c “CREATE EXTENSION postgis_topology”

Si estas planificant restaurar un backup d’una base de dades mes vella en esta nova base de dades:

psql -d [yourdatabase] -f legacy.sql

Aquestes extensions també les podem executar amb pgadmin III el fitxer sql el trobarem en /usr/share/psotgresql/9.3/contrib/postgis-2.1 son el fitxers:

postgis.sql
topology.sql
legacy.sql

7. Fem d’aquesta base de dades un template

$ psql

$ UPDATE pg_database SET datistemplate = TRUE WHERE datname = ‘template_postgis’;

8. Per a crear una base de dades a partir del template ho podem fer amb el pgadmin III, que es la interfície gràfica gestora de postgres, o be des de la terminal.

$ createdb -T template_postgis [new_postgis_db]

9. Si no hem definit el password del usuari que hem creat i no podem accedir a la base de dades caldrà deinir el password de la següenmt forma

$ psql

postgres=# ALTER USER postgres PASSWORD ‘newPassword’;
ALTER ROLE

10. Finalment tindrem la nostra base de dades preparada per a treballar amb ella. La diferència amb una base de dades postgres normal es que tindrem les vistes geometry column i geography collumn

Captura del pgadminII amb el template-postgis ja instal·latdcom.
Captura del pgadminII amb el template-postgis ja instal·lat.

Postgres disposa d’un programa per a carregar shapes que es diu shp2postgis el qual disposa d’una versió mes amigable amb interfície gràfica. No obstant hi h una forma més fàcil de carregar les capes en postGIS si emprem gvSIG tenim una eina que ens permet exportar directament les capes vectorial de la nostra vista a postGIS. Aquesta eina també ens permet visulitzar-les i treballar amb elles, QGIS amb l’extensió postGIS Manager també ens permet connectar-nos . Si treballem amb gvSIG i postGIS 2.0 caldrà habilitar les funcions de la versió 1 de postGIS per a que gvSIG es puga comunicar amb la base de dades, el post de MappingGIS ens explica com fer-ho. Si treballem en local tindrem que ficar els següents paràmetres per poder connectar-nos desde QGIS o gvSIG:

Host: localhost (el sustituirem per la ip/url si ens volem connectar a un sevidor no local)
Port 5432 (es el port per defecte de postgres)
User: "User postgres"
Password: "user postgres password"
Database: "nom de la base de dades"
Formulari per a connectar amb postGIS de gvSIG
Formulari per a connectar amb postGIS de gvSIG.
Formulari per a connectar amb postGIS de QGIS.
Formulari per a connectar amb postGIS de QGIS.

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out /  Canvia )

Google photo

Esteu comentant fent servir el compte Google. Log Out /  Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out /  Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out /  Canvia )

S'està connectant a %s