Conselhos de armazenamento de dados necessários: melhor maneira de armazenar localização + dados de tempo?

StackOverflow https://stackoverflow.com/questions/2443381

Pergunta

Tenho um projeto em mente que exigirá que a maioria das consultas seja dividida em Lat/Long e Date + Hora.

Inicialmente, eu estava pensando em um RDBMS padrão onde o campo Lat, Long e DateTime é indexado corretamente. Então, comecei a pensar em um sistema baseado em documentos em que o documento era essencialmente um registro de data e hora e cada documento tem LAT/Long com ele. Cada documento pode ter n objetos associados a ele.

Estou procurando conselhos sobre o que seria o melhor tipo de mecanismo de armazenamento para esse tipo de coisa é - qual da idéia acima seria melhor ou se há algo completamente, essa é a solução ideal.

EDIT: Procurando uma solução de código aberto/gratuito. Infelizmente, o preço é um problema!

Obrigado

Foi útil?

Solução

Eu usei o Postgres (DB de código aberto gratuito) com extensões PostGIS para trabalhar com dados de localização. Eles são extremamente bons, apesar de eu estar trabalhando em um ambiente de MS com todos os bancos de dados de produção usando o MSSQL 2005, usei o Postgres com GIS para manipular e pré -calcular muitos dados geográficos.

O PostGIS possui utilitários para importar arquivos ArcView .shp, o que é uma enorme vantagem, pois é assim que a maioria dos dados geográficos está presente. Ele também fornece uma série de funções SQL baseadas em localização, como contém (...) e próximo (...); e fornece um mecanismo para indexar dados espaciais.

Já faz algum tempo desde que o usei, mas lembro que é sólido e muito útil.

PostGIS: http://postgis.refrações.net/

Outras dicas

O SQL Server 2008 possui novos tipos de dados para armazenar e processar informações geográficas, além dos tipos de data e hora usuais.

Ver "Trabalhando com dados espaciais (mecanismo de banco de dados)".

O SQL Express é um banco de dados gratuito + tem suporte para armazenar Lat/Long & DateTime

Apenas uma dica - use o tempo da UTC para o DateTime, especialmente se o seu aplicativo precisar estar ciente de vários locais ...

hth.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top