🎯 Objetivo:
Entender qué son los índices en bases de datos, por qué son importantes y cómo mejoran el rendimiento de las consultas.
🔍 ¿Qué es un índice?
Un índice es una estructura de datos que mejora la velocidad de las consultas en una base de datos, similar al índice de un libro que te ayuda a encontrar un tema rápidamente sin leer todo el libro.
📈 ¿Por qué usar índices?
-
Aceleran las consultas que filtran datos (ejemplo:
WHERE,JOIN). -
Evitan tener que escanear toda la tabla (búsqueda completa).
-
Mejoran el rendimiento especialmente en tablas grandes.
⚙️ ¿Cómo funciona un índice?
-
Un índice guarda los valores de una o más columnas junto con punteros a las filas donde se encuentran esos valores.
-
Cuando haces una consulta, el sistema busca primero en el índice y luego accede directamente a las filas relevantes.
🧩 Tipos comunes de índices
| Tipo | Descripción | Ejemplo de uso |
|---|---|---|
| Índice único | No permite valores duplicados | Clave primaria |
| Índice compuesto | Índice sobre varias columnas | Buscar por nombre + fecha |
| Índice de texto | Para búsquedas por texto completo o parcial | Buscador en una columna de texto |
| Índice hash | Busca rápida por igualdad (no rango) | Buscar por ID exacto |
🚀 Ejemplo práctico en SQL
Crear un índice sobre la columna nombre:
Consulta que se beneficia:
📝 Consideraciones importantes
-
Los índices ocupen espacio en disco.
-
Insertar o actualizar datos con índices es un poco más lento, porque también se actualizan los índices.
-
Hay que elegir bien qué columnas indexar según las consultas más frecuentes.
📝 Actividad práctica
-
Crea una tabla simple y añade un índice en una columna.
-
Inserta muchos datos y mide la diferencia de tiempo en consultas con y sin índice.
-
Piensa en qué columnas de una base real usarías índices y por qué.
✅ Revisión rápida
-
¿Qué beneficio principal da un índice?
-
¿Por qué no conviene crear índices en todas las columnas?
-
¿Qué es un índice compuesto?