Nuestra organización está considerando trasladar nuestro flujo de trabajo de geoprocesamiento a PostGIS. Actualmente utilizamos ArcGIS, con una plétora de herramientas personalizadas de Python utilizadas en ModelBuilder. Estamos trasladando la mayor parte de nuestros datos a PostGIS para que sean consumidos por una variedad de aplicaciones, y ahora nos preguntamos si también tiene sentido realizar el procesamiento de datos allí.
Tratamos los datos para que sean compatibles con nuestro software. Un cliente compra nuestro software, nos da sus datos y nosotros los procesamos para optimizarlos para su uso en nuestro software. Esto nos obliga a crear una serie de herramientas para manejar diferentes calidades de datos de entrada. No podemos esperar recibir datos en un formato o esquema concreto, así que creamos herramientas para asignar campos de entrada a campos de salida, analizar campos individuales en campos múltiples, fusionar conjuntos de datos múltiples, etc. También realizamos uniones espaciales, intersecciones, recortar espacios en blanco y concatenar campos, y muchas otras operaciones comunes. PostGIS parece ser perfectamente capaz de realizar todas nuestras necesidades de procesamiento.
Para los que utilizáis PostGIS para el tratamiento de los datos, ¿tenéis algún consejo de organización, herramientas a utilizar, etc.?
- ¿lo utilizas junto con el procesamiento en python de QGIS?
- ¿hay gente que utiliza un ORM de Python para el procesamiento no web? Me he inclinado por usar GeoDjango ya que tiene un ORM de Python para PostGIS. Nuestra prueba inicial de usar PostGIS para procesar datos tiene muchos bloques de texto SQL grandes en código Python y estamos pensando que el ORM de GeoDjango puede ayudar a crear un código más manejable y legible. También está el GeoAlquimia ORM que interactúa de forma similar con PostGIS, y no parece ser tan específico para la web como lo es Django.
No he oído que la gente utilice PostGIS para hacer geoprocesamiento tanto como veo que la gente utiliza QGIS o ArcGIS, así que quiero saber si es una alternativa comparable.