MongoDB - Limitaciones de indexación
En este capítulo, aprenderemos sobre las limitaciones de indexación y sus otros componentes.
Sobrecarga adicional
Cada índice ocupa algo de espacio y provoca una sobrecarga en cada inserción, actualización y eliminación. Entonces, si rara vez usa su colección para operaciones de lectura, tiene sentido no usar índices.
Uso de RAM
Dado que los índices se almacenan en RAM, debe asegurarse de que el tamaño total del índice no exceda el límite de RAM. Si el tamaño total aumenta el tamaño de la RAM, comenzará a eliminar algunos índices, lo que provocará una pérdida de rendimiento.
Limitaciones de consultas
La indexación no se puede utilizar en consultas que utilizan:
- Expresiones regulares u operadores de negación como $ nin, $ not, etc.
- Operadores aritméticos como $ mod, etc.
- $ where cláusula
Por lo tanto, siempre es recomendable verificar el uso del índice para sus consultas.
Límites de claves de índice
A partir de la versión 2.6, MongoDB no creará un índice si el valor del campo de índice existente excede el límite de la clave del índice.
Insertar documentos que superan el límite de claves de índice
MongoDB no insertará ningún documento en una colección indexada si el valor del campo indexado de este documento excede el límite de la clave de índice. Lo mismo ocurre con las utilidades mongorestore y mongoimport.
Rangos máximos
- Una colección no puede tener más de 64 índices.
- La longitud del nombre del índice no puede superar los 125 caracteres.
- Un índice compuesto puede tener un máximo de 31 campos indexados.