Нужен совет по хранению данных: лучший способ хранить данные о местоположении и времени? - PullRequest
6 голосов
/ 14 марта 2010

Я имею в виду проект, который потребует, чтобы большинство запросов были отключены по широте / долготе, а также по дате + времени.

Изначально я думал о стандартной СУБД, в которой поля lat, long и datetime правильно проиндексированы. Затем я начал думать о системе, основанной на документах, где документ был, по сути, временной меткой, и в каждом документе была широта / долгота. С каждым документом может быть связано n объектов.

Я ищу совет о том, какой механизм хранения лучше всего подойдет для такого рода вещей - какая из приведенных выше идей была бы лучше или если есть что-то еще, что является идеальным решением.

Редактировать: в поисках открытого источника / бесплатное решение. К сожалению, цена является проблемой!

Спасибо

Ответы [ 3 ]

5 голосов
/ 29 марта 2010

Я использовал PostGres (бесплатная база данных с открытым исходным кодом) с расширениями PostGIS для работы с данными о местоположении. Они очень хороши, хотя я работал в среде MS со всеми производственными базами данных, использующими MSSQL 2005, я использовал PostGres w / GIS для манипулирования и предварительного расчета большого количества географических данных.

PostGis имеет утилиты для импорта файлов arcview .shp, что является огромным плюсом, поскольку именно так присутствует большинство географических данных. Он также предоставляет множество основанных на местоположении функций sql, таких как contains (...) и near (...); и он обеспечивает механизм индексации пространственных данных.

Прошло некоторое время с тех пор, как я его использовал, но я помню, что он был твердым и очень полезным.

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

2 голосов
/ 14 марта 2010

SQL Server 2008 имеет новые типы данных для хранения и обработки географической информации в дополнение к обычным типам даты и времени.

См. " Работа с пространственными данными (компонент Database Engine) ".

0 голосов
/ 02 апреля 2010

SQL Express - это бесплатная база данных + есть поддержка для хранения значений lat / long и dateTime

просто совет - используйте время UTC для dateTime, особенно если ваше приложение должно знать различные места ...

НТН.

...