Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Multikey Indexes

Los índices multiclave son índices que mejoran el rendimiento de las queries en campos que contienen arreglos. Se puede crear un índice multiclave en una colección utilizando el MongoDB\Collection::createIndex() método y la misma sintaxis que usas para crear campo único o índices compuestos.

Los ejemplos de esta guía usan la colección movies en la base de datos sample_mflix de la Conjuntos de datos de muestra de Atlas. Para aprender a crear una implementación gratuita de MongoDB y cargar los conjuntos de datos de muestra, consulte la guía Introducción a MongoDB.

Usa el método MongoDB\Collection::createIndex() para crear un índice multiclave. El siguiente ejemplo crea un índice en orden ascendente sobre el campo cast con valores de arreglo:

$indexName = $collection->createIndex(['cast' => 1]);

El siguiente es un ejemplo de una query que está cubierta por el índice creado en el ejemplo de código anterior:

$document = $collection->findOne(
['cast' => ['$in' => ['Aamir Khan', 'Kajol']]],
);
echo json_encode($document), PHP_EOL;
{"_id":...,"title":"Holi",...,"cast":["Ashutosh Gowariker",
"Aamir Khan","Rahul Ranade","Sanjeev Gandhi"],...}

Los índices Multikey funcionan de manera diferente a otros índices en términos de cobertura de consultas, cálculo de límites del índice y comportamiento de ordenación. Para obtener más información sobre el comportamiento y las limitaciones de los índices multiclave, consulta Índices Multiclave en el manual de MongoDB Server.

Para ver ejemplos ejecutables que demuestran cómo gestionar índices, consulte Índices para la optimización de query.

Para obtener más información sobre cualquiera de los métodos mencionados en esta guía, consulta la siguiente documentación de la API:

Volver

Índices compuestos

En esta página