By jongarrido | septiembre 4, 2015 | 0 Comment
Segundo artículo de una serie de 3 para el análisis de redes network con software open source. Explicaremos en ese artículo cómo crear un base de datos con capacidad postgis y pgrouting y después incorporar en ella un red network con datos Open Street Map.
Las versiones 9.x de postgresql tiene un sistema de extensiones que nos van a facilitar mucho las cosas. Podemos realizar la instalación incluso con clicks de ratón desde la interfaz pgAdmin III*. Explicaremos en todo caso la instalación mediante consola.
*Nota: ojo, con la versión 9.1 no funciona el pgAdmin 1.8 (último hasta la fecha). Así que estoy usando una más antigua, la 1.16.
Lo primero es crear nuestra base de datos:
sudo -u postgres createdb basenueva
Nos conectamos a la base de datos con:
psql basenueva
Y añadimos las extensiones..
basenueva=# CREATE EXTENSION postgis;
CREATE EXTENSION
basenueva=# CREATE EXTENSION postgis_topology;
CREATE EXTENSION
basenueva=# CREATE EXTENSION pgrouting;
CREATE EXTENSION
basenueva=# \q
Y ya están habilitadas las característias espaciales y topológicas en la base de datos.
El siguiente paso es incorporar los datos desde OSM. De todas las vías posibles creo que la que se explica a continuación es la mas sencilla: utilizando la herramienta osm2pgrouting. Esta herramienta incorpora los datos en la base de datos y crea la topología adecuada.
Primero descargamos los datos (desde geofabrik o desde cloudmade):
wget http://downloads.cloudmade.com/europe/southern_europe/spain/la_rioja/la_rioja.osm.bz2
Y descomprimimos:
bunzip2 la_rioja.osm.bz2
Solo nos queda ejecutar la herramienta:
osm2pgrouting -file la_rioja.osm -config /user/share/pgrouting/mapconfig.xml -dbase basenueva -passwd XXXX
Y a esperar… que tarda un rato.
Si no tienes el archivo de configuración puedes utlizar este mapconfig
Y ya está!!