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

Configuración del índice MongoDB 2.6, consulta usando $or, $in, con límite y clasificación

No estoy seguro de si se trata de un error en MongoDB 2.6, pero puede consultar este artículo sobre la creación de índices.

Entonces, siguiendo ese consejo, puedes probar con estos índices:

$col->ensureIndex(array('owner' => 1, 'ca' => -1));
$col->ensureIndex(array('ca' => -1, 'owner' => 1, 'perm.type' => 1));
$col->ensureIndex(array('perm.list' => 1, 'ca' => -1, 'owner' => 1));

Editar:

Desde su explicación, si está probando en pequeños conjuntos de datos, la recopilación completa es rápida porque MongoDB no necesita pasar por muchos documentos. Debe intentar hacer una prueba con, por ejemplo, 10000 documentos para ver una diferencia real. Los valores de sus campos en los índices deben ser lo suficientemente diferentes para garantizar la selectividad del índice para sus consultas (por ejemplo, no todos los documentos son del mismo propietario).