3

Хорошо, позвольте мне коротко объяснить это:Как реализовать хранилище и вычисления на основе геоданных?

1. Я хочу создать веб-сайт, который предоставляет услуги, основанные на местоположении, такие как http://fireeagle.yahoo.net/.

2.I думаю, большинство из этих служб что-то делают с долготой и широтой.

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

Я новичок в этом и любые обратные связи приветствуются

ответ

2

Пространственные расширения для реляционных систем управления базами данных обеспечивают хранение и индексный доступ географии/геометрии Datatypes. Они позволяют выполнять пространственные соединения и всевозможные пространственные запросы. Короче говоря, они именно то, что вам нужно.

Если вы используете стек с открытым исходным кодом, я бы порекомендовал PostGIS, пространственное расширение Postgresql. Если вы используете стек MS, попробуйте spatial extensions to SQL Server 2008.

+1

В отношении стека с открытым исходным кодом MySQL также имеет геопространственную поддержку - http://dev.mysql.com/doc/refman/5.0/en/gis-introduction.html –

0

Я бы порекомендовал вам рассмотреть GeoDjango
Это очень хорошо, так как она объединяет в себе простоту Python/Django и силу PostGIS. Но он также может быть сложным и обеспечивать слишком много функций, поэтому тратить ваше время.

Если у вас нет особых потребностей, есть еще одно более простое решение, которое будет использоваться только с Django или Python, то есть Geopy. Не добавляя пространственные расширения в базу данных, он позволяет выполнять геопространственные вычисления с использованием общих структур данных (также любой базы данных). Вы можете рассчитать расстояния, делая (обратное) геокодирование. Взгляните на страницу Getting Started, но также прямо на code, так как она хорошо документирована. Я использую его для проекта Dynamic Carpooling, и он работает очень хорошо.

Оба решения хорошо согласуются с каркасом Django, поэтому вы можете легко создать веб-сайт по предоставленным услугам.

1

У MySQL есть spatial extension с учебниками here. Основная идея получения быстрых запросов - создать таблицу с столбцом с пространственным индексом, индексом R-tree, который быстро подходит для запросов диапазона, таких как «дайте мне очки около этой точки».

Конечно, есть Postgres с PostGIS, и вы можете оплатить эту услугу у таких компаний, как SimpleGeo.

 Смежные вопросы

  • Нет связанных вопросов^_^