Indices

02/09/2003 - 17:13 por Alfonso | Informe spam
Hola amigos expertos en SQL.
Quisiera saber que criterios debo tener para la creación de indices en mis
tablas.
Tengo un super Query que me duraba mucho, estuve probando creandole indices
y ahora me dura unos cuantos segundos lo que me llamo la atención es que
casi todos los campos son indices de la tabla, esto no me parece apropiado.
Si tuviera que hacer indices por cada campo esto fuera natural en el SQL.
Por este enredo es que necesito saber cuales son los criterios que ustedes
toman para crear indices y como hago para que mis Querys más o menos
complejos no me duren tanto.
 

Leer las respuestas

#1 Salvador Ramos
02/09/2003 - 17:22 | Informe spam
Hola:

En realidad los indices que se ponen sobre una tabla dependen de muchos
factores, y hay que analizar cada caso en concreto. Pero bueno, intentaré
ayudarte dandote algunas indicaciones muy genéricas:

- No es normal que haya un índice por casi todos los campos.
- El criterio genérico a la hora de crear un índice es que se necesita
extraer un porcentaje muy pequeño del total de filas de la tabla filtrando
la información por los atributos que componen dicho índice.

Lo que también te puede ayudar bastante es la utilización del Index Tunning
Wizard (asistente para la optimización de índices), que tienes disponible en
el Query Analyzer, en el menú Consulta. Esta herramienta te sugerirá los
índices que necesitas para mejorar el rendimiento de las consultas a tu base
de datos.

Un saludo
Salvador Ramos
Murcia - España

No puedes conseguir software rápidamente disminuyendo su calidad.
En cambio, si que lo consigues aumentando la calidad.

www.helpdna.net (información sobre Windows DNA, SQL Server, .NET, ...)


Microsoft MVP SQL Server
MCP SQL Server
PASS Spanish Group (www.sqlpass.org)

"Alfonso" escribió en el mensaje
news:
Hola amigos expertos en SQL.
Quisiera saber que criterios debo tener para la creación de indices en mis
tablas.
Tengo un super Query que me duraba mucho, estuve probando creandole


indices
y ahora me dura unos cuantos segundos lo que me llamo la atención es que
casi todos los campos son indices de la tabla, esto no me parece


apropiado.
Si tuviera que hacer indices por cada campo esto fuera natural en el SQL.
Por este enredo es que necesito saber cuales son los criterios que ustedes
toman para crear indices y como hago para que mis Querys más o menos
complejos no me duren tanto.



Preguntas similares