AYUDA!! optimizacion de consultas
Necesito saber los tips basicos para optimizar los tiempos de respuesta en consultas. Cuando se recomienda crear un indice sobre la tabla, como se deberia ordenar las tablas dentro del from y como seria la mejor forma de disponer las condiciones del where. Gracias de antemano
Todos estos Tips estàn muy buenos.Tambièn trata de no realizar, en lo posibles calculos y funciones en el SELECT.
Te recomiendo utilizar Explain Plan para saber si estàs usando bièn los îndices en la consulta.
A la hora de crear îndices compuestos en un tabla trata de crearlos con la menor cantidad de campos posibles. Si puedes crear varìos ìndices es mejor mejor, solo en caso en que la tabla no tenga mucho movimiento de datos (Insert, delete).
Te recomiendo utilizar Explain Plan para saber si estàs usando bièn los îndices en la consulta.
A la hora de crear îndices compuestos en un tabla trata de crearlos con la menor cantidad de campos posibles. Si puedes crear varìos ìndices es mejor mejor, solo en caso en que la tabla no tenga mucho movimiento de datos (Insert, delete).
Ten en cuenta la distribución en la base de datos de los tablespaces, leete algo de administración de Oracle ya que es muy importante como distribuir los indices en diferentes discos para que la lectura sea mucho más rápida.
Saludos:
sorry por contestar muy tarde pero en fin
Los indixes siempre deben de ser creados cuando creas una tabla y si ya las tienes creadas creaselos si no tus consultas se tardaran años y para optimizar tus consultas entra ala pag de www.leccotech.com para que Evalues sus Herramientas son muy buenas para tu caso.
sorry por contestar muy tarde pero en fin
Los indixes siempre deben de ser creados cuando creas una tabla y si ya las tienes creadas creaselos si no tus consultas se tardaran años y para optimizar tus consultas entra ala pag de www.leccotech.com para que Evalues sus Herramientas son muy buenas para tu caso.
Hola Rosana, respecto a tu pregunta , puedo te doy algunos datos que espero te ayuden bastante :
- Es recomendable que analices las tablas periodicamente dependiendo de la periodicidad con que cambia la informacion contenida en ellas , esto se hace con el comando Analize y la opcion cumpete statistics. Esto lo que hace es recalcular todas las estadisticas a nivel de datos del diccionario de datos interno de oracle en cuanto a la tabal y a sus indices. Lo ùtil de esto es que estas estadisticas son las que Oracle con el optimizador en modo chose utiliza para determinar el camino para traer los datos.
- Una vez realizada esta labor , encuanto a la construccion de consultar, siempre ubica en el from de primeras las tablas de mayor numero de registro y asi vas organizandolas de las manera que la ultima tabla que parezca en el from sea la mas pequeña de todas.
- En cuanto a las clausulas where , procura al maximo utilizar los indices al enlazar las tablas , utilizandolos en el mismo orden de columnas en que fueron contruidos los indices en el caso de que sean indices compuestos.
- En cuanto a los indices debes crear indices, compuestos por las columnas que has identificado como las de mayor uso en tus consultas.
- Procura al maximo no aplicar dentro del where ninguna funcoin sobre los campos de un indice puesto que al hacerlo inmediatamente lo desactivas. ojo solo para efectos de la consulta que estas realizando.
Bueno esos son algunos datillos que espero te ayuden en tu inquietud
Cordialmente
Hoober H. Hoyos
Cali-Colombia
- Es recomendable que analices las tablas periodicamente dependiendo de la periodicidad con que cambia la informacion contenida en ellas , esto se hace con el comando Analize y la opcion cumpete statistics. Esto lo que hace es recalcular todas las estadisticas a nivel de datos del diccionario de datos interno de oracle en cuanto a la tabal y a sus indices. Lo ùtil de esto es que estas estadisticas son las que Oracle con el optimizador en modo chose utiliza para determinar el camino para traer los datos.
- Una vez realizada esta labor , encuanto a la construccion de consultar, siempre ubica en el from de primeras las tablas de mayor numero de registro y asi vas organizandolas de las manera que la ultima tabla que parezca en el from sea la mas pequeña de todas.
- En cuanto a las clausulas where , procura al maximo utilizar los indices al enlazar las tablas , utilizandolos en el mismo orden de columnas en que fueron contruidos los indices en el caso de que sean indices compuestos.
- En cuanto a los indices debes crear indices, compuestos por las columnas que has identificado como las de mayor uso en tus consultas.
- Procura al maximo no aplicar dentro del where ninguna funcoin sobre los campos de un indice puesto que al hacerlo inmediatamente lo desactivas. ojo solo para efectos de la consulta que estas realizando.
Bueno esos son algunos datillos que espero te ayuden en tu inquietud
Cordialmente
Hoober H. Hoyos
Cali-Colombia
