Repaso
English
Bases de datos y SQLIntermedioDB-01

¿Cuál es el principal coste de añadir un índice a una tabla?

Opciones

  1. Consultas SELECT más lentas en la columna indexada
  2. Más almacenamiento y escrituras más lentas, porque el índice debe actualizarse (Opción correcta)
  3. La tabla queda bloqueada para siempre tras crear el índice
  4. Las foreign keys se desactivan en la tabla indexada

Respuesta

Más almacenamiento e INSERT/UPDATE/DELETE más lentos porque el índice debe mantenerse

Por qué

Un índice es una estructura ordenada extra (normalmente un B-tree) que permite a la base de datos encontrar filas rápido, como el índice al final de un libro.

Pero cada vez que insertas, actualizas o eliminas una fila, todos los índices de esa tabla también deben actualizarse, y los índices ocupan disco.

Así que indexa las columnas por las que filtran, unen u ordenan tus consultas importantes, no todas las columnas.

Recuerda

Los índices aceleran las lecturas y frenan las escrituras.

Términos clave

Practica esta pregunta en Repaso