Я создаю приложение, где координаты механизмов регистрируются GPS. Я хочу реализовать несколько опций для начала, таких как:
Мне нужны некоторые инструкции как, где запустить на проектировании баз данных и проектировании приложений. Что-либо от лучших практик, подсказки к опыту действительно помогли бы мне добраться на правильном пути.
Я могу помочь вам в одном вопросе, mysql определенно - лучший выбор, я много раз шел тем же путем, что и вы, и пространственное расширение mysql просто фантастическое , на самом деле это потрясающе быстро даже для таблиц с более чем 5 миллионами строк пространственных данных, все это в индексе. Пространственное расширение - один из наиболее хорошо хранимых секретов mysql, который мало кто использует;)
ORM, я бы рекомендовал пропустить это tbh - если у вас огромный объем данных, все эти экземпляры классов убьют ваше приложение, придерживайтесь av простая структура массива для работы с данными.
RE массивный поток данных: либо потребляйте его в реальном времени и сохраняйте только каждую 10-ю запись, либо просто помещайте все это в одну таблицу - это не повлияет на скорость из-за того, как таблица индексируется, но, возможно, стоит учесть соображения размера .
В качестве альтернативы, исходящей от PHP, вы можете попробовать postgis на postgresql, но я всегда отдавал предпочтение mysql за простоту использования, встроенную поддержку и всестороннюю скорость.
Удачи!
Да, я также рекомендую использовать Solr. Текущий релиз - 1.4. Он невероятно хорошо работает для решения этой проблемы.
ORM -... Вам может понадобиться sfSolrPlugin с Doctrine ORM, чтобы связать PHP с Solr, смотрите статью от LucidWorks под названием Создание поискового приложения за 15 человеко-дней
обновление индекса в реальном времени -. Это появится в следующем выпуске Solr, я полагаю, Solr 1.5. Вы можете получить его из SVN.
Геопространственный поиск - Я использую Spatial Search Plugin for Apache Solr. Возможно, G-s возможности будут включены в Solr 1.5. Я полагаю, что уже есть рудиментарная поддержка g-s, без использования плагина.