Abro este tema para comentar cuestiones sobre rendimiento y optimización de consultas SQL en bases de datos Oracle, ejecución y análisis de Explain Plans, etc.
- Printer-friendly version
- Log in to post comments
Abro este tema para comentar cuestiones sobre rendimiento y optimización de consultas SQL en bases de datos Oracle, ejecución y análisis de Explain Plans, etc.
Carlos, excelente haber
Submitted by Tody1820 (not verified) on 30 June, 2010 - 23:26
Carlos, excelente haber encontrado este foro... felicidades!!
Estoy auditando las consutlas SQL que se han ejecutado por un periodo determinado, sin embargo, entre la información que me arroja, encuentro: Tipo de objeto, Orden, Filas, Tamaño (KB), Costo, Tiempo(seg), Costo de CPU y Costo de E/S. Los costos a qué se refieren? en qué unidades está expresado el dato? Esto, es por cada select, union, group by, etc. que tenga en mi consulta.
De antemano, gracias !!
Tody, el coste de las
Submitted by Carlos on 15 July, 2010 - 14:20
In reply to Carlos, excelente haber by Tody1820 (not verified)
Tody, el coste de las consultas es una estimación que hace el optimizador de Oracle cuando ejecutas un Explain Plan, y es una medida interna que has de tener en cuenta, pero que al ser una estimación no es muy precisa.
Básicamente te va a servir para estimar si un cambio en la manera de hacer una Query va a conllevar una mejora en su ejecución, no vas a poder compararlo con otras medidas de rendimiento, y ni siquiera es aconsejable compararlo entre dos consultas diferentes que no devuelvan los mismos datos.
Gracias por tu respuesta
Submitted by Tody on 19 July, 2010 - 22:05
In reply to Tody, el coste de las by Carlos
Gracias por tu respuesta Carlos !! ... entendiendo entonces que cada consulta tiene su propia medición, hice unas adecuaciones optimizando una misma consulta y las cantidades cambiaron mucho. Sin embargo, me sigue quedando la duda del por qué los valores de un inner join, left join, etc. siempre salen muy altos a pesar de haber optimizado en gran medida los demás elementos de la consulta. Deberían de aminorar al igual que los otros elementos, no es así?
No necesariamente. Depende de
Submitted by Carlos on 19 July, 2010 - 22:44
In reply to Gracias por tu respuesta by Tody
No necesariamente. Depende de la optimización que hayas hecho. Si no varían quiere decir que la optimización puede mejorar otras cosas, pero no afecta demasiado a las joins.
Si la optimización la habías hecho justo para mejorar las joins, revisa la consulta porque puede que algo no se esté comportando como esperabas.
Si es una optimización orientada a mejorar en otros puntos, si el coste de esos puntos y el general se ha reducido ya irás bien encaminado.
Perfecto. Buscaré entonces
Submitted by Tody on 20 July, 2010 - 13:04
In reply to No necesariamente. Depende de by Carlos
Perfecto. Buscaré entonces la forma de optimizar aun más la consulta. Mil gracias por compartir tu conocimiento en este mundo tan maravilloso como lo son las bases de datos y más, en BI.
Saludos.
Estoy intentando optimizar
Submitted by Anonim. (not verified) on 4 October, 2010 - 17:17
Estoy intentando optimizar esta query y me es imposible se os ocurre algo:
SELECT COLOR.VAL_MINIMO,
MAX(COLOR.VAL_DESCRIPCION)
FROM COLOR, COLOR6
WHERE COLOR.VAL_CODIGO = COLOR6.DV_COD_VALOR AND
COLOR6.DV_COD_MODELO = 80 AND
COLOR6.DV_COD_VERSION = 2 AND
COLOR6.DV_COD_DATO = 118
GROUP BY COLOR.VAL_MINIMO
ORDER BY VAL_MINIMO
Tiene de coste 22 y es una exageracion.
Gracias.
Carlos, podrias por favor
Submitted by ramon (not verified) on 16 January, 2014 - 14:32
Carlos, podrias por favor darme una explicacion detallada respecto a tecnicas de optimizacion o tal vez unos link de referencia (revision sitactica,plan de ejecucion, otros), muchas gracias
Hola Ramón La mejor
Submitted by Carlos on 16 January, 2014 - 23:24
Hola Ramón
La mejor referencia que se me ocurre es la misma documentación de Oracle. Para temas de optimización, en el libro Oracle Database Performance Tuning Guide 11g, por ejemplo, seguro que vas a encontrar casi todo lo que necesites, y sabes que la fuente es fiable. Te enlazo el capítulo Optimizing SQL Statements de este libro de la documentación online de Oracle, espero que te sea útil.
hola estoy empezando a
Submitted by fran (not verified) on 3 February, 2014 - 22:58
hola estoy empezando a estudiar sql y quería saber si hay un analizador de consultas sql para oracle, y no cometer fallos en la sintaxis, y si lo hay se le puede poner cualquier tabla?? muchas gracias.
hola Me gustaria saber
Submitted by caperucita on 12 February, 2015 - 11:30
hola
Me gustaria saber cuantos OR puedo poner en una clauaula WHERE?
Gracias
Que yo sepa no hay ninguna
Submitted by Carlos on 12 February, 2015 - 19:24
In reply to hola Me gustaria saber by caperucita
Que yo sepa no hay ninguna limitación específica para los OR que puedes incluir en una sentencia SQL de Oracle, aunque si utilizas demasiados, y dependiendo también de lo que contengan los OR, se puede llegar a producir un error de tipo ORA-03113: end-of-file on communication channel.
También te digo que el error te va a venir más bien porque hayas alcanzado el límite que tu base de datos, o los conectores que intervengan puedan manejar para una sola sentencia SQL, no por llegar a un límite para los OR que contiene la sentencia.
Este límite para sentencias, además, puede depender de la versión de la base de datos, de tu entorno, del cliente que utilices..
Te enlazo una respuesta en askTom, que lo deja bastante claro, y un documento de referencia de Oracle 10g en el que se indican los límites lógicos de la base de datos, y al final apunta esta nota:
Y de todas maneras, lo normal es que una sentencia con muchos OR siempre se pueda resolver de otra manera más simple, ¿cuántos OR necesitas incluir en tu sentencia?
como puedo optimizar esta
Submitted by DIANA (not verified) on 21 September, 2016 - 23:01
como puedo optimizar esta consulta, me aparece un index fast full scan en la tabla en_objeto el indice de esta tabla es sgl_categoria y las pks son:cod_convocatoria, tpo_objeto, cod_etapa, sgl_tipologia
Hola Diana ¿Y la consulta
Submitted by Carlos on 22 September, 2016 - 10:41
In reply to como puedo optimizar esta by DIANA (not verified)
Hola Diana
¿Y la consulta SQL? Si tienes el explain plan también ayudaría.
Lo único que para poder crear imágenes tienes que registrarte.
Saludos,