2012-06-02 3 views
-1

Je travaille sur l'analyse d'une base de données mongo. Pour analyser les données, tous les documents qui ont été créés la semaine dernière doivent être trouvés. Actuellement, la base de données possède un champ de temps de création associé à chaque document, qui est stocké dans le format BSON par défaut de mongo. Puisque la collection serait grande, j'ai besoin d'une méthode rapide pour faire la même chose.Trouver les derniers messages dans mongodb

La base de données est toujours en cours de développement, de sorte que plus de champs/index peuvent y être ajoutés, si cela permet de faire des requêtes rapides.

Quelle est la méthode la plus rapide pour cela?

Répondre

0

Vous pouvez ajouter un index dans le champ heure de création (probablement décroissant). Si les données sont toujours analysées pendant une semaine complète (du dimanche au samedi) plutôt que pendant les sept derniers jours, vous pouvez ajouter un autre champ qui est rempli avec le numéro de la semaine lorsque le document est inséré. Cela peut être une stratégie plus efficace si vous devez avoir un autre champ indexé pour créer un index composé sur la semaine, otherField - seulement en analysant les requêtes que vous exécuterez sur ces données, vous serez en mesure de déterminer si cela fonctionnerait mieux qu'un index sur juste le temps de création.

Lire sur how indexes work in MongoDB peut vous aider à formuler d'autres questions dont vous aurez besoin pour déterminer les réponses à obtenir la meilleure performance.

Questions connexes