Edición de versiones para Postgresql 9.2.4 / postGIS 2

8

Antecedentes: estoy "construyendo" un SIG con PostgreSQL 9.2.4 / PostGIS 2 como la base de datos y QGIS 1.8.0 como la aplicación geográfica. Habrá múltiples usuarios accediendo, editando y viendo los datos al mismo tiempo.

Pregunta:

  1. ¿La edición de versiones se aplica automáticamente en PostgreSQL 9.2.4 / PostGIS 2?
  2. ¿Es posible habilitar / aplicar la edición de versiones y, en caso afirmativo, cómo?

He echado un vistazo a pgVersion para PostgreSQL 9.2.4 / PostGIS 2 y el complemento QGIS pgVersion. Sin embargo, si entiendo correctamente (leer los archivos de ayuda y probarlo), pgVersion solo permite editar los valores de celda de las columnas existentes y tampoco se pueden agregar nuevas características geográficas.

PyMapr
fuente
PostgreSQL usa Slony para la replicación ... Todavía no lo he probado, debería aplicarse también a las características de PostGIS ...
DPSSpatial
3
¿Desea admitir la edición de versiones con algo similar a las versiones de ESRI o simplemente tener varios editores editando la misma base de datos? El último simplemente funciona, el primero requiere una infraestructura que todavía está en proceso en el ámbito del código abierto. Yo mismo escribí un sistema de versiones sobre postgis para nuestro trabajo en AmigoCloud. Lo más parecido a algo similar es GeoGit, pero tiene sus desventajas para ciertos flujos de trabajo.
Ragi Yaser Burhum
Preferiría versiones similares a las versiones de ESRI. Sin embargo, mi base de datos solo será un prototipo, por lo que por ahora solo tener múltiples editores editará la misma base de datos será adecuado. También echaremos un vistazo a GeoGit.
PyMapr
Me pregunto si @PaulRamsey tiene algo que puedan comentar sobre este tema.
RyanKDalton
¿O posiblemente @ LR1234567 podría tener algunas ideas?
RyanKDalton

Respuestas:

1

, parece que PostgreSQL / PostGIS permite que varios usuarios editen y vean los mismos datos al mismo tiempo automáticamente, ya sea que se vean o editen en PostgreSQL / PostGIS o QGIS. Sin embargo, si no se maneja adecuadamente, esto, aparentemente, puede resultar en características superpuestas y / o corruptas.

Aquí están los enlaces de los cuales saqué mis conclusiones:

Tenga en cuenta que la pregunta y las respuestas en los enlaces anteriores se hicieron / respondieron hace aproximadamente 5 años, lo que significa que apuntan a versiones anteriores del programa. Sin embargo, no puedo imaginar que las versiones más recientes de PostgreSQL / PostGIS no admitan la edición multiusuario (incluso podrían haberse mejorado).

Actualización: Para aquellos que usan QGIS 1.8.0, en la pestaña 'Tabla' en DB Manager hay una opción de Control de versiones. Sin embargo, sigo recibiendo un error que dice "el lenguaje" SQL "no existe". ¿Alguna sugerencia sobre cómo omitir o corregir este error? ¿Alguien más tiene el mismo problema / error?

PyMapr
fuente
1

Definitivamente sí, puede realizar el control de versiones mediante el uso de disparadores http://www.postgresql.org/docs/9.1/static/triggers.html en tablas geográficas.

Utilizo este enfoque para guardar datos temporales para poder emitir consultas que crearían una instantánea de los registros en un momento dado.

  1. La edición de versiones no se aplica por lo que sé.

  2. Sí, esto puede ser compatible. Habrá varias respuestas basadas en las necesidades del usuario. Como ejemplo simple, puede usar el http://www.pgadmin.org/docs/1.16/pgagent.html y programar un trabajo para copiar datos en vivo a una tabla versionada en una ventana diaria.

O puede usar una tabla sombreada que registre ediciones de registros cuando ocurran esos eventos.

Postgresql tiene todos los recursos que necesita para hacer eso, pero necesitará habilidades con el lenguaje SQL.

cavila
fuente
1

Si está utilizando Qgis, hay un complemento para el control de versiones utilizando una base de datos postgres https://plugins.qgis.org/plugins/FastVersion/ El complemento también permite administrar los permisos de los usuarios en las versiones. Puede configurar un usuario por versión y luego consolidar los cambios en una sola versión, con la función de publicación.

Alfredo García
fuente