2010-03-14 13 views
6

Tengo un proyecto en mente que requerirá que la mayoría de las consultas se descodifiquen de latitud y longitud, así como de fecha y hora.Consejo de almacenamiento de datos necesario: ¿la mejor manera de almacenar datos de ubicación + tiempo?

Inicialmente, estaba pensando en un RDBMS estándar donde lat, long y el campo de fecha y hora están correctamente indexados. Entonces, comencé a pensar en un sistema basado en documentos donde el documento era esencialmente una marca de tiempo y cada documento tenía lat/long con él. Cada documento podría tener n objetos asociados con él.

Estoy buscando consejos sobre cuál sería el mejor tipo de motor de almacenamiento para este tipo de cosas: cuál de las ideas anteriores sería mejor o si hay algo más completamente que es la solución ideal.

Editar: En busca de una solución de código abierto/libre. ¡Desafortunadamente el precio es un problema!

Gracias

+1

Un sistema de gestión de documentos no es un RDBMS (de hecho, generalmente utiliza uno para almacenar los documentos). Dependiendo de la cantidad de datos que espera administrar, frecuencia de consulta y cuántos devuelven, podría descubrir que un sistema de documentos no es eficiente en absoluto. Explique por qué cree que la "marca de tiempo" se modela mejor como documento. –

+0

No creo necesariamente que la marca de tiempo se modele mejor como documento. Es solo algo que estaba considerando. Como mencioné a continuación, en el lenguaje de tipo SQL, anticipo conjuntos de consultas entre momentos específicos y con ubicaciones. Esos dos datos serían los campos más comunes activados. – mote

Respuesta

5

He usado PostGres (db de fuente abierta gratuita) con extensiones PostGIS para trabajar con datos de ubicación. Son extremadamente buenos, a pesar de que estaba trabajando en un entorno de MS con todas las bases de datos de producción utilizando MSSQL 2005, utilicé PostGres w/GIS para manipular y precalcular una gran cantidad de datos geográficos.

PostGis tiene utilidades para importar archivos .shp de arcview, lo que es una gran ventaja ya que así es como la mayoría de los datos geográficos están presentes. También proporciona una gran cantidad de funciones sql basadas en la ubicación como contains (...) y near (...); y proporciona un mecanismo para indexar datos espaciales.

Ha pasado un tiempo desde que lo usé, pero recuerdo que es sólido como una roca y muy útil.

PostGIS: http://postgis.refractions.net/

2

SQL Server 2008 tiene nuevos tipos de datos para almacenar y procesar la información geográfica, además de los tipos de fecha y hora habituales.

Ver "Working with Spatial Data (Database Engine)".

+0

Mis disculpas: debería haber sido más claro, buscando una solución de código abierto/libre. – mote

+1

SQL Server Express 2008 es gratis. –

+0

¿Pero creo que existen restricciones para ejecutarlo en un entorno de producción? La última vez que lo comprobé lo verificaría. ¡Gracias! – mote

0

SQL Express es una base de datos + libre tiene suppport para almacenar latitud/longitud & fechaHora

sólo un consejo - el uso del tiempo UTC para fechaHora especialmente si su aplicación tiene que ser consciente de los diversos ubicaciones ...

hth.

Cuestiones relacionadas