Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Prácticas recomendadas para trabajar con índices
Creación de índices
Al importar datos en Amazon DocumentDB, debe crear los índices antes de importar grandes conjuntos de datos. Puede usar la herramienta de índice de Amazon DocumentDB
Selectividad de índice
Limite la creación de índices a los campos en los que el número de valores duplicados sea inferior al 1% del número total de documentos de la colección. Por ejemplo, si su colección contiene 100 000 documentos, cree índices únicamente en los campos en los que el mismo valor aparezca 1000 veces o menos.
La elección de un índice con un número elevado de valores únicos (es decir, una cardinalidad alta) garantiza que las operaciones de filtrado arrojen un número reducido de documentos, lo que permite obtener un buen rendimiento durante los escaneos del índice. Un ejemplo de un índice de alta cardinalidad es un índice único, que garantiza que los predicados de igualdad devuelvan como máximo un documento único. Entre los ejemplos de baja cardinalidad se incluyen un índice sobre un campo booleano y un índice sobre el día de la semana. Debido a su bajo rendimiento, es poco probable que el optimizador de consultas de la base de datos elija índices de cardinalidad bajos. Al mismo tiempo, los índices de cardinalidad bajos siguen consumiendo recursos como espacio en disco y. I/Os Como regla general, debe aplicar los índices a campos donde la frecuencia del valor típica sea un 1 % del tamaño total de la colección o menos.
Además, se recomienda crear índices únicamente en campos que se utilizan comúnmente como filtro y buscar regularmente índices no utilizados. Para obtener más información, consulte ¿Cómo analizo el uso de los índices e identifico los índices no utilizados?.
Impacto de los índices en los datos de escritura
Aunque los índices pueden mejorar el rendimiento de las consultas al evitar la necesidad de examinar todos los documentos de una colección, esta mejora tiene algún inconveniente. Para cada índice de una colección, cada vez que se inserta, actualiza o elimina un documento, la base de datos debe actualizar la colección y escribir los campos en cada uno de los índices de la colección. Por ejemplo, si una colección tiene nueve índices, la base de datos debe realizar diez escrituras antes de validar la operación para el cliente. Por lo tanto, cada índice adicional implica una latencia de escritura adicional y un aumento en el almacenamiento utilizado en general. I/Os
Las instancias del clúster deben tener el tamaño adecuado para mantener toda la memoria del conjunto de trabajo. Esto evita la necesidad de leer continuamente las páginas de índice del volumen de almacenamiento, lo que repercute negativamente en el rendimiento y genera I/O costos más altos. Para obtener más información, consulte Determinación del tamaño de las instancias.
Para obtener un mejor rendimiento, reduzca el número de índices de sus colecciones, agregando solo los índices necesarios para mejorar el rendimiento de las consultas comunes. Aunque las cargas de trabajo varían, una buena directriz es mantener el número de índices por colección en cinco o menos.
Identificación de índices que faltan
Como práctica recomendada, identifique los índices que faltan de forma regular. Para obtener más información, consulte ¿Cómo identifico los índices que faltan?.
Identificación de índices no utilizados
Como práctica recomendada, identifique y elimine los índices no utilizados de forma regular. Para obtener más información, consulte ¿Cómo analizo el uso de los índices e identifico los índices no utilizados?.