Pregunta

Estoy interesado en las mejores prácticas para diseñar tablas de DB relacionales para mantener datos espacio-temporales. Específicamente, los datos que se mantendrán en tales tablas son geometrías personalizadas que tienen cierto período de validez, definición de geometría y aspecto jerárquico (ciertas geometrías serán hijos de otras geometrías).

Tengo curiosidad si alguien puede señalarme un buen material sobre este tema o podría sugerir una implementación específica.

Gracias.

¿Fue útil?

Solución

Usaría postgis (http://postgis.refracciones.net/) para el tipo de geometría y haga una mesa como esta:

CREATE TABLE data (
    geometry geometry,
  valid_from timestamp,
  valid_till timestamp,
  check(valid_till >= valid_from)
);

Postgis puede hacer consultas espaciales, por lo que puede consultar la base de datos de todas las geometrías en una geometría específica (por ejemplo, consulta para todas las geometrías en una geometría que representa un estado o un condado).

Para obtener el período de validez, debe agregar a esta consulta condición adicional para obtener solo las filas donde (valid_from >= now() and valid_till <= now()).

También necesitará índices en las tres columnas, por supuesto. En la columna de geometría debe haber un índice espacial.

Toda la información sobre las consultas espaciales y el tipo de geometría y los índices de geometría que puede encontrar en el sitio posterior a las Gases.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top