sql >> Base de Datos >  >> NoSQL >> MongoDB

MongoDB:Calling Count () frente a seguimiento de recuentos en una colección

Si tiene muchos datos, seguiría con el mismo enfoque e incrementaría un contador agregado cada vez que se agregue un nuevo mensaje para un usuario, usando una colección como esta:

cuenta

{
    userid: 123,
    messages: 10
}

Desafortunadamente (¿o afortunadamente?) no hay activadores en MongoDB, por lo que incrementaría el contador desde la lógica de su aplicación:

db.counts.update( { userid: 123 }, { $inc: { messages: 1 } } )

Esto le dará el mejor rendimiento, y probablemente también coloque un índice en el userid campo para búsquedas rápidas:

db.counts.ensureIndex( { userid: 1 } )