Skip to content

Entrevista Carlos Gustavo Ruiz

Carlos Gustavo Ruiz edited this page Sep 23, 2018 · 5 revisions

Fecha

Jueves, 20 de septiembre de 2018 8:00pm

Canal

https://www.youtube.com/channel/UCRwNHOZLuGxUcEXM8-0iUAA

Temas

  • Un widget con flask
  • Procesos ETL
  • Portal de mapas en Django

Contexto

El proyecto es algo extenso, se llama Hub Geoespacial de Panamá. La idea es tener un ecosistema de soporte a la gestión de datos georeferenciados del Estado. Como se come esto? Bueno, primero en preparar una plataforma que los usuarios usen, con unas bases de datos en PostgreSQL (con las extensiones PostGIS para los productos Open Source y SDE para los productos privativos de la marca ESRI) Para comunicarse con esa base de datos desde el desktop en el area Open Source usamos QGIS (que tiene plugins hechos con Python). Y el equivalente en el software privativo requiere una aplicación servidor de aplicación llamada ArcGIS Server Enterprise, pero la aplicación desktop (ArcMap o ArcGIS Pro dependiendo del año de lanzamiento) también tiene la capacidad de scripting usando Python.

El proyecto originalmente trabajaba con una aplicación que no tuvo más mantenimiento, a la que se había previsto crear un widget que permitiera convertir unos archivos excel a la base de datos geográfica, para posteriormente publicar los webservice de mapas. A falta de mantenimiento de esa aplicación se esta haciendo con Flask y Flask-excel una aplicación web sencilla que haga las veces de ese widget, e incrustarlo en la parte de la plataforma que se nos indique.

Sobre el ETL sucede lo siguiente, hace 2 o 3 años GeoKettel era "the way to go", pero desde ese entonces no tiene actualizaciones. Así que usar Python como plataforma para construir un procedimiento ETL sin problemas de versiones posteriores. La idea es tomar los datos del servicio REST de ESRI Portal for ArcGIS Server y convertirlos a PostgreSQL con PostGIS para ser usados eventualmente por los clientes de la plataforma Open Source.

Para esto requests, psycopg2, eventualmente se usarán los componentes de scripting de ArcGIS Pro y SQL Alchemy si vemos que nos facilitan las cosas.

El portal de mapas son en realidad 4 productos que trabajan juntos. Sin un orden en particular: Portal for ArcGIS Server (privativo), GeoNetwork (gestión de metadatos espaciales, hecho en Java, sobre Tomcat), GeoServer (publicador de webservices de mapas, hecho en Java, sobre Tomcat), y finalmente GeoNode (equivalente Open Source al Portal for ArcGIS Server, hecho en Django).

La cosa es que GeoNode es una aplicación para Infraestructuras de Datos Espaciales, que permite subir datos y publicarlos en forma de webservices usando GeoServer, subir documentos relativos a los datos publicados, registrar metadatos, crear mapas en línea, etc.

Es bastante completo, aunque a veces medio latoso de instalar.

Python tiene un montón de aplicaciones y bibliotecas para las geociencias. Y eso lo hace genial en este campo.

Video

Entrevista
Entrevista a Carlos Gustavo Ruiz | Python Venezuela 2018

Datos adicionales

Algunas tecnologías nombradas en la conversación fueron: