Indexing en un campo que está en una matriz de subdocumentos
Estoy tratando de encontrar el mejor diseño para el sistema de mensajería que estoy transfiriendo de SQL Server a MongoDB: actualmente (en SQL Server) hay tablas de árbol que almacenan el mensaje: Mensajes, Bandeja de entrada y Enviado. El mensaje se almacena en la tabla Mensajes, y Bandeja de entrada / Enviado tiene entradas para todos los destinatarios / remitentes de cada mensaje.
Ahora, en MongoDB quería combinar esos tres en una colección, con documentos como este:
{
_id:
subject:
body:
sender: {memid:, name:}
recip: [{memid:, name:}, {memid:, name:}, {memid:, name:}, etc]
}
Ahora, necesito poder recuperar todos los mensajes para un destinatario determinado por memid y tengo que hacerlo rápido, por lo que se requiere un índice (tendré cientos de millones de tales entradas). Entonces, mi pregunta es: ¿puedo indexar por un campo de un documento en una matriz?