2015-06-30 3 views
1

Мне нужно сохранить большое количество координат местоположения вместе с их меткой времени. Вот как текущая таблица схема выглядит следующим образом:Схема таблицы для хранения большого количества координат местоположения в базе данных

User_ID, Location_Coordinate, Timestamp 

Где каждый пользователь непрерывно отслеживается и много координат местоположения будет генерироваться для каждого пользователя. Существует несколько пользователей. Каким будет правильный способ эффективного хранения таких данных?

Мне нужно было бы получить данные за 24 часа для каждого пользователя.

+0

Есть ли необходимость в данных после 24 часов? Если да, то как вам нужно получить доступ к данным старше 24 часов? Сколько пользователей? –

ответ

1

Самый простой способ - сохранить все это в одной таблице с столбцом PostGIS geometry для местоположения. Что такое «эффективный», полностью зависит от вашего приложения. Есть несколько вещей, которые следует учитывать:

  • Если вы хотите хранить каждое местоположение каждого пользователя, используйте обычную таблицу. Независимо от того, следует ли использовать индексы, зависит от количества вставок (ввод новых мест) и способа получения данных. Очень частые вставки означают, что индексы должны часто обновляться; это штраф за исполнение.
  • Если у вас больше мест, чем требуется для вашего приложения (например, автоматическое нажатие текущего местоположения с устройства (GPS)), вы можете захотеть использовать таблицу без разметки без индексов (поэтому очень быстро вставлять), а затем регулярно опросает эту таблицу для новых записей, обрабатывает их (т. е. уменьшает количество мест для хранения только соответствующих) и сохраняет обработанные данные постоянно в другой таблице с соответствующими индексами. В PostGIS есть много функций обработки, которые вы можете использовать для этой цели. Храните эту небольшую таблицу маленькой (регулярно опроса и удаляйте обработанные данные), и вы не пропустите индексы. Затем вы будете запрашивать эту последнюю таблицу в течение последних 24 часов и использовать таблицу с незащищенными данными только для вновь полученных мест.

В противном случае не так много советов, которые могут быть предоставлены с ограниченной информацией, которую вы поставляете. Измените свой вопрос более подробно, и вы получите более подробный ответ.

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