Entradas

Mostrando las entradas con la etiqueta tuning

Estadísticas de Sistema

La captura de las estadísticas de sistema consiste en que Oracle toma los tiempos de hacer lecturas de 1 bloque, lecturas multibloque y velocidad de CPU. Con esto el optimizador genera planes considerando el uso de CPU y diferenciado lecturas random, que son de 1 bloque, de lecturas secuenciales, que son de un número mayor de bloques controlado por el parámetro multiblock_read_count. Si uno no ha corrido las estadísticas de sistema, el CBO funciona igual que en Oracle8i, es decir no concidera costo de CPU y considera igual el costo de lectura random de 1 bloque que la lectura secuencial multibloque. Uno de los efectos negativos del no contar con estadísticas de sistema es que el optimizador considera el mismo costo una operación single block que una multiblock y con ello parace que los planes "TABLE FULL SCAN" parecen mas baratos. La realidad podría ser que una operación single block demore 5ms y una multiblock de 16 bloques demore 17ms. El optimizador, con estadísticas d...

Análisis de SQL usando trace con eventos y variables de bind

Al analizar un proceso de carga se pudo determinar que cuál sentencia SQL era la mas consumidora. A continuación se muestra un extracto de la salida de tkprof: SELECT     LTCD_CDG_IATA_ITN_ORI,LTCD_CDG_IATA_ITN_DES,LTFC_DIA_CDG_ITN_ARR_DATE    ,LTFC_DIA_CDG_ITN_DEP_DATE FROM    FTPS WHERE    FTPS_PNR_CDG = :b1  AND FTPS_SEG_NMR = :b2  AND LTFV_DIA_CDG =  :b3 call     count       cpu    elapsed       disk      query    current        rows ------- ------  -------- ---------- ---------- ---------- ----------  ---------- Parse        0      0.00       0.00          0          0          0           0 Execute   9413      0.52...