22 votos

(¿Cuándo debo utilizar una base de datos con SIG?

Soy programador desde hace mucho tiempo, pero nuevo en SIG. Intento familiarizarme con los aspectos de los SIG relacionados con las bases de datos y sé que hay algunas especializadas en SIG. Básicamente estoy tratando de entender si se debe utilizar una base de datos de este tipo o seguir con el muy popular, bien establecido, ampliamente apoyado (y libre) MySql.

El tipo de aplicaciones que estoy propenso a codificar serían cosas como:

  • gestión de flotas (vehículos terrestres o marítimos)
  • seguimiento de empleados
  • control de inventario (con una granularidad de una posición física precisa de un metro más o menos)
  • errm, eso es todo, realmente

Por lo general, no espero tener que hacer un seguimiento de más de unos cientos (como máximo, posiblemente unos miles) de artículos. A veces, los artículos estarán ubicados en el mismo edificio (grande), serie de edificios, ciudad, país o en todo el mundo, dependiendo de la aplicación.

Ocasionalmente los representaré visualmente, ya sea en un plano personalizado de un edificio o, más probablemente, en Google Earth o similares (más sobre esto en otra pregunta).

Me parece que me va igual de bien con MySql y añadiendo columnas para lat/long u otros datos posicionales, pero eso puede ser sólo porque conozco MySql.

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

13voto

Nathan Feger Puntos 7675

La verdadera ventaja de las bases de datos espaciales (PostGIS, extensiones espaciales de MySQL o cualquier otra) es que se pueden realizar operaciones espaciales con datos espaciales. Si sólo se almacenan coordenadas de puntos, entonces no se gana mucho con las bases de datos espaciales (basta con utilizar dos columnas numéricas). Si almacena combinaciones de coordenadas de puntos (dónde están los clientes), coordenadas de líneas (por dónde pasan los camiones de reparto) y polígonos (zonas de ventas), y luego hace consultas que relacionen esos distintos datos (cuántos clientes hay en una zona de ventas, cuántos camiones han pasado hoy a menos de 2 km de un cliente pero no han hecho una entrega o una recogida), puede ganar mucho.

Como señala iant, merece la pena echar un vistazo a PostGIS para una aplicación de servidor. SpatiaLite es las extensiones espaciales a SQLite, que puede ser un mejor ajuste para un escritorio / incrustado / aplicación móvil fuera de línea, al tiempo que ofrece funciones SQL bastante similares [ Divulgación: Trabajo en SpatiaLite ], señalando que no hay nada que le impida utilizar PostGIS en una aplicación de escritorio.

8voto

Adam Ernst Puntos 6939

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

Una vez que empiece a necesitar hacer preguntas como qué objetos están en qué país (o edificio) entonces PostGIS realmente entra en juego y si decide que necesita mapear sus objetos entonces todas las herramientas de código abierto populares hablarán con PostGIS fuera de la caja.

2voto

user21690 Puntos 139

Para completar las respuestas y reiterar algunos puntos, uno utiliza una base de datos con capacidad espacial 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. qué puntos están más cerca
  3. la distancia entre un punto y otro
  4. qué puntos están a x kilómetros dentro de la carretera de acceso

Si este tipo de consultas relativas al DONDE es una característica importante para una aplicación, suele ser muy recomendable utilizar una base de datos espacial.

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

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X