(¿Cuándo) debo usar una base de datos habilitada para GIS?

21

Soy un programador desde hace mucho tiempo, nuevo en GIS. Estoy tratando de familiarizarme con los aspectos de la base de datos de GIS y entiendo que hay algunas bases de datos especializadas para el uso de GIS. Básicamente, estoy tratando de entender si debo usar una base de datos o seguir con la MySql muy popular, bien establecida, ampliamente soportada (y gratuita).

El tipo de aplicaciones que soy capaz de codificar sería:

  • gestión de flotas (vehículos terrestres u oceánicos)
  • seguimiento de empleados
  • control de inventario (en una granularidad de una posición física precisa con un metro aproximadamente)
  • errm, eso es todo, realmente

Normalmente esperaría estar rastreando no más de 1 pocos cientos (máximo, posiblemente unos pocos miles) de artículos. A veces, los elementos se ubicarán en el mismo edificio (grande), serie de edificio, ciudad, país o mundial, según la aplicación.

Ocasionalmente los representaré visualmente en un plano de planta personalizado de un edificio o, más probablemente, en Google Earth o similar (más de lo cual en otra pregunta).

Me parece que estoy bien con MySql y agregando columnas para datos de posición lat / long u otros, pero eso podría ser porque sé MySql.

¿Hay alguna razón por la que debería buscar una base de datos más especializada?

    
pregunta Mawg 27.09.2012 - 07:50

3 respuestas

12

La ventaja real de las bases de datos espaciales (PostGIS, extensiones espaciales a MySQL o cualquier otra cosa) es que puede realizar operaciones espaciales en datos espaciales. Si solo está almacenando coordenadas de puntos, entonces realmente no gana mucho con el espacio (solo use dos columnas numéricas). Si almacena combinaciones de coordenadas de puntos (donde están los clientes), y coordenadas de líneas (donde van los camiones de entrega) y polígonos (regiones de ventas), y luego realiza consultas que relacionan esos diversos bits de información (cuántos clientes dentro de una venta). En esta zona, cuántos camiones viajaron a menos de 2 km desde el sitio de un cliente hoy pero no hicieron una entrega o recogida, puede ganar mucho.

Como lo señaló un experto, PostGIS vale la pena buscar una aplicación de servidor. SpatiaLite es la extensión espacial de SQLite, que puede ser mejor para una aplicación móvil de escritorio / incrustada / fuera de línea, al tiempo que ofrece funciones de SQL bastante similares [ Divulgación: trabajo en SpatiaLite ], notando que hay nada que le impida utilizar PostGIS en una aplicación de escritorio.

    
respondido por el BradHards 27.09.2012 - 13:28
8

Sin duda, debe considerar el PostGIS enormemente popular, bien establecido, ampliamente apoyado (y gratuito). Hará todo lo que MySQL pueda hacer y manejará ubicaciones espaciales como objetos de primera clase. Por lo tanto, puede realizar selecciones basadas en puntos con un cuadro delimitador (u otro polígono) sin tener que escribir todas las comparaciones, etc.

Una vez que comience a hacer preguntas como cuáles son los objetos en qué país (o edificio), PostGIS realmente se convierte en algo propio y, si decide que necesita mapear sus objetos, todas las herramientas populares de código abierto hablarán PostGIS fuera de la caja.

    
respondido por el Ian Turton 27.09.2012 - 10:02
2

Para agregar a las respuestas y reiterar algunos puntos, uno usa una base de datos habilitada espacialmente si tiene consultas relacionadas con las relaciones espaciales de los datos, algunas de las cuales son las siguientes:

  
  1. qué puntos están a menos de x kilómetros de mis puntos de interés
  2.   
  3. qué puntos están más cerca
  4.   
  5. qué tan lejos está un punto de otro punto
  6.   
  7. qué puntos son x kilómetros dentro del camino de acceso
  8.   

Si estas consultas relacionadas con DÓNDE son una característica importante para una aplicación, generalmente se recomienda encarecidamente utilizar una base de datos espacial.

Por supuesto, uno puede recurrir a la lógica de codificación / aplicación para algunas de estas consultas, como usar la fórmula de distancia para 1, pero no es necesario reinventar la rueda.

    
respondido por el arcsum 09.10.2014 - 06:40

Lea otras preguntas en las etiquetas