Vous êtes sur la page 1sur 22

CUADERNOS DE GEOMTICA PRCTICA

INTEGRACIN DEL GESTOR DE BBDD POSTGRESQL INCLUYENDO SU EXTENSIN ESPACIAL POSTGIS CON LOS CLIENTES S.I.G. GVSIG Y KOSMO

Este primer estudio es necesario y preliminar de cara a poder abordar otro complementario, pero necesariamente posterior de los clientes SIG enumerados. Efectivamente, de cara a la correcta integracin de dichos clientes con el gestor de datos PostGIS, elegido por coherencia con estudios previos en I.A.M. realizados por Base de Datos y siendo conocida tambin el hecho de que su extensin espacial es usada por sistemas cartogrficos OGC consolidados. Slo con este primer estudio es posible abordar con las base y seguridad adecuadas aqul. De ah su necesidad que ha sido fundamentada a travs de los siguientes puntos:

Determinacin de la versin ms evolucionada posible del SGBDE Determinacin de las versiones ms evolucionadas de los clientes SIG a estudio Problemas y forma de instalacin del SGBDE Problemas de integracin entre el gestor OGC comentado y los clientes Solucin posible a los posibles problemas detectados Comprobacin de la viabilidad de la arquitectura software base.

Enrique de Dios San Romn

Ingeniero en Geomtica y topografa Ingeniero Tcnico en topografa Master en Sistemas de Informacin Geogrfica por la U.P.M.

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS - PRELIMINARES

Es importante conocer las pginas principales en la web: Principal: http://www.postgresql.org.es/ Descarga: http://www.enterprisedb.com/products-services-training/pgdownload#windows (Hay soporte Linux (x32 y x64) , Windows (x32 y x64) y Mac

La versin utilizada para la prueba piloto ser: Base de datos Postgresql Versin 9.2.4-1 para windows-x64 (Parte del desarrollo se hizo en x64) Extensin espacial Postgis 2.0 (includo en el paquete de descarga de Postgresql) Cliente de PostgreSQL phppgAdmin 5.0.4

Datos importantes para la instalacin tipo: UserName/password: postgres/super Host 127.0.0.1 Puerto/port : 5432 Configuracin regional Spanish/Spain Spatial database name: postgis20

Al final podremos realizar sendos accesos directos a las dos funcionalidades principales que vamos a usar: PgAdmin "C:\Program Files\PostgreSQL\9.2\bin\pgAdmin3.exe"

Conversor shapes "C:\Program Files\PostgreSQL\9.2\bin\postgisgui\shp2pgsql-gui.exe"

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS PANTALLAS INSTALACIN

Aqu es importante instalar todos los formatos de acceso externo (programacin) contra el SGBBDD y la extensin PostGIS (2.0 en este caso) y la herramienta phppgadmin.

Aqu irn apareciendo una serie de pantallas simples de instalacin que iremos pasando. Finalmente nos aparecer una del siguiente tipo

(la clave puede ser cualquiera en nuestro caso hemos elegido super) Pasadas unas pantallas sin complicacin alguna terminar la instalacin de PostgreSQL.

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS - COMPROBACIN

Accederemos a travs del acceso directo de pgadmin al cliente de PostgreSQL

Es importante ver que postgis20 y template_postgis_20, esta ltima es la plantilla de modelo espacial, que usaremos para generar nuestra primera BBDD espacial. Para generar una BBDDEE de ejemplo nos situaremos sobre Bases de Datos -> Nueva Base de Datos y aparecer una ventana como la siguiente en la que los elementos principales sern:

Nombre de la BBDDEE: COSLADA Propietario: postgres, que es el usuario de la instalacin Tipo de carcter: Juego Spanish_Spain.1252 Codificacin: UTF8. Capaz de representar cualquier carcter Unicode. Estndar. Plantilla: template_postgis_20 (esto es lo que hace que sea una implementacin espacial) Roll: public al que damos todos los privilegios (podramos generar un usuario concreto)

Hecho esto, veremos que la BBDD generada COSLADA tiene implementadas las caractersticas bsicas espaciales que precisa para ser BBDDEE (postgis, postgis_topology).

La manera ms sencilla de incorporar datos espaciales para cualquier instalacin en la que se parta de datos SDE o bien de plataformas capaces de exportar su informacin al formato de intercambio shape de ESRI es utilizando la herramienta shp2pgsql-gui, que antes haba que manejar a travs de consola (cmd), pero que en la versin con la que trabajamos de postgresql incluye una interface GUI de usuario muy cmoda. Ya dijimos que era muy til tener un acceso directo a la misma. Accediendo a la herramienta tendremos:

Los pasos sern: Definir la conexin a la BBDDEE Aadir los ficheros shape que se incorporarn como tablas PostGIS Importar propiamente

Una vez establecida la conexin tendremos en el log un mensaje de conexin realizada. En el caso de error, algn parmetro no estar correctamente puesto (la password que estamos usando sabemos que es super). Despus seleccionaremos los shapes a incorporar tal y como se muestra (pulsando add file)

Es importante realizar una revisin del log para ver que no se ha producido ningn problema en la importacin de datos a la BBDDEE COSLADA. En el ejemplo contemplado tenemos geometras del tipo multistring, multipolygon y point.

Volviendo a la herramienta pgadmin podremos observar que en el esquema public de la BBDD COSLADA, nos deber de aparecer el conjunto de tablas generado (CCPP, CONSTRU,CRUCE,MASA,MUNICIPIO).

Tambin podremos realizar alguna consulta para ver que todo est en orden.

Para realizar un par de consultas SQL espacial podemos en pgAdmin ir a Herramientas -> Herramientas de consulta. Ah nos saldr un cliente en el que podremos realizar como con DBVisualizer o cualquier otro cliente de BBDD la consulta sobre PostGRE. Vamos a realizar un par de consultas:

rea total: Calcular la superficie de las parcelas que perteneciendo al cdigo postal 28823 se encuentren en el distrito 3, seccin censal 3: SELECT SUM((ST_AREA (ST_GEOGFROMWKB (P.GEOM)))/10000) FROM PARCELA P, CCPP C, SSCC S WHERE COD_POSTAL = '28823'AND ST_CONTAINS (C.GEOM, P.GEOM) AND (DISTRITO= 3 AND SECCION=3) AND ST_CONTAINS (S.GEOM, P.GEOM) ;

Distancia media de los centroides de las secciones censales al centroide de cdigo postal 28821 y que ste contenga a aquellas secciones completamente SELECT AVG (ST_DISTANCE (ST_GEOGFROMWKB (ST_CENTROID (C.GEOM)), ST_GEOGFROMWKB (ST_CENTROID (S.GEOM)))) FROM CCPP C, SSCC S WHERE COD_POSTAL = '28821' AND ST_CONTAINS (C.GEOM, S.GEOM);

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS COMPATIBILIDAD GVSIG

Versin gvSIG utilizada: 2.0.0.2066 final Descarga:

Se procede ahora a demostrar que las versiones de PostgreSQL y PostGIS utilizadas es compatibles o no con las versin estudiada (ltima disponibles a 16 de Mayo de 2013) de la herramienta cliente SIG denominada gvSIG.

Accedemos a la pantalla de incorporacin de datos a travs de Vista -> Aadir capa:

Slo se carga la tabla. Es incapaz de cargar los datos. Slo estructura.

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS COMPATIBILIDAD KOSMO

Versin Kosmo: 2.0.1 (Windows / Linux) Descarga: http://www.opengis.es/index.php?option=com_docman&task=cat_view&gid=17&Itemid=42

Se procede ahora a demostrar que las versiones de PostgreSQL y PostGIS utilizadas son compatibles o no con la versin estudiada del cliente SIG denominado Kosmo (ltima disponibles a 16 de Mayo de 2013). En este caso lo primero que tenemos que definir es la proyeccin de trabajo, en nuestro caso geogrfica sobre elipsoide WGS 84:

Accedemos a la pantalla de incorporacin de datos a travs de Vista -> Cargar datos

Kosmo, al igual que gvSIG es incapaz de cargar los datos. Slo la estructura de las tablas. En este caso adems no se nos proporciona informacin precisa del error generando un problema con EPSG.

INSTALACIN DE POSTGRESQL Y EXTENSIN POSTGIS SOLUCIN gvSIG / Kosmo

El problema est en lo siguiente: Hasta la versin 9.1 de PosgreSQL existan algunas funciones espaciales sin el prefijo ST_. A partir de la versin 9.1 esto ha cambiado, de manera que debemos crear la funcin AsEWKB para que devuelva el valor de la actual funcin ST_AsEWKB y as con todas las funciones afectadas. Dado que gvSIG y Kosmo utilizan dichas funciones (probablemente las libreras SEXTANTE que incluyen tambin, aunque este extremo no se ha comprobado, dado que al usarlos dentro de la herramienta la BBDDEE ya incluye las libreras completas) al incorporar en su cdigo jdbcs con libreras PostgreSQL de versiones anteriores a la 9.1. La solucin completa al problema est disponible en www.opengeo.org . Podemos bajarnos la herramienta Open GeoSuite 3.0.2 disponible para Windows y Mac. (Es importante, aunque se trate de otro tipo de aplicaciones y aqu slo se diga a ttulo informativo, que se encuentra disponible tambin una serie de libreras SDK que permiten la construccin de herramientas a medida). La solucin est disponible con seguridad en la versin 3.0.2 y no antes de la 2.4.5 (instalacin comprobada) en la que en la ruta (C:\Program Files (x86)\OpenGeo\OpenGeo Suite\pgsql\9.1\share\contrib\postgis-2.0) podemos ejecutar en la BBDDEE afectada el script de BBDD denominado legacy.sql que corrige los efectos provocados por lo antes expuesto, lo cual sin este script sera un trabajo mprobo. As volviendo a realizar los pasos de conexin a PostGIS desde los clientes SIG analizados obtenemos los siguientes resultados: gvSIG

KOSMO

Dando por solucionada as tanto la manera en que debe de instalarse PostgreSQL, PostGIS y los parches a aplicar para compatibilizar la ltima versin de dicho SGBD con los clientes SIG gvSIG, Kosmo y todos aquellos que no hagan uso de jdbc actual de la versin del sistema de BBDD. El nico detalle a destacar entre ambos es que Kosmo discrimina las tablas de plantilla del apartado espacial del propio gestor y por tanto no aparecen en la lista de las seleccionables, mientras que en gvSIG debemos conocerlas para no importarlas, lo cual hace algo ms amigable la importacin desde Kosmo.

Vous aimerez peut-être aussi