¿Puede MongoDB usar un índice al verificar la existencia de un campo con el operador $ exist?

Si tengo datos en miusers colección que se parece a:

{ name: '...', 
  email: '...', 
  ...,
  photos: {
     123: { url: '...', title: '...', ... },
     456: { url: '...', title: '...', ... },
     ...
  }
} 

Y quiero encontrar qué usuario posee la identificación con foto 127, entonces estoy usando la consulta:

db.users.find( {'photos.127': {'$exists' => true} } );

Lo he intentado, pero no parece posible que MongoDB use un índice para esta consulta. El índice que probé fue:db.users.ensureIndex({photos:1});. Y cuando uséexplain() mongo me dijo que estaba usando un BasicCursor (es decir, no se utilizó ningún índice).

Es posible crear un índice que mongo usará para esta consulta?

Respuestas a la pregunta(3)

Su respuesta a la pregunta