2012-06-02 28 views
-1

Я работаю над анализом базы данных монго. Для анализа данных необходимо найти все документы, которые были созданы на прошлой неделе. В настоящее время в базе данных есть поле времени создания, связанное с каждым документом, которое хранится в формате BSON по умолчанию в монго. Поскольку коллекция будет большой, мне нужен быстрый способ сделать то же самое.Найти последние сообщения в mongodb

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

Что является самым быстрым способом для этого?

ответ

0

Вы можете добавить указатель в поле времени создания (возможно, по убыванию).

Если данные всегда будут анализироваться в течение всей недели (воскресенье-суббота), а не за последние семь дней, вы можете подумать о добавлении другого поля, которое заполняется номером недели при вставке документа. Это может быть более эффективная стратегия, если вам нужно будет проиндексировать другое поле для создания составного индекса в неделю, otherField - только путем анализа запросов, которые будут выполняться на этих данных, вы сможете определить, будет ли это работать лучше, чем индекс только времени создания.

Чтение на how indexes work in MongoDB может помочь вам сформулировать больше вопросов, которые вам нужны для определения ответов, чтобы получить лучшую производительность.

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