La media de un evento oculta la forma del tiempo: mil esperas de 1 ms y una espera de 1 s suman lo mismo. La distribución de latencia separa las ocurrencias por rango de duración y muestra cuál de los dos casos tiene usted.
Qué muestra la sección
La sección Distribución de latencia (en el índice, Latencia) tiene una tabla para cada uno de los eventos de espera con más tiempo y una para cada tipo de llamada, con el nombre del tipo seguido de (duración e de la llamada), como FETCH (duración e de la llamada). La tabla de la llamada usa la duración (e=) de todas las llamadas de ese tipo, las de la aplicación y las del SQL recursivo.
Cada tabla se abre con un clic. Su fila muestra el nombre, las ocurrencias y los segundos, como 2 ocurrencias · 0,001 s.
Cómo leerla
Los rangos crecen en potencias de 10: de 0 a 1 µs, de 1 a 10 µs, de 10 a 100 µs, de 100 µs a 1 ms y así sucesivamente, hasta 1.000 s o más. En pantalla, cada rango aparece como 1 ms ≤ e < 10 ms, donde e es la duración de cada ocurrencia.
| Columna | Qué indica |
|---|---|
| Rango de duración | El intervalo de duración del rango. |
| Ocurrencias | Cuántas ocurrencias cayeron en el rango. |
| % ocurr. | La parte de las ocurrencias del evento o de la llamada que cayó en el rango. |
| Duración (s) | La suma de la duración de las ocurrencias del rango. |
| % duración | La parte del tiempo del evento o de la llamada que cayó en el rango, con la barra al lado. |
Compare los dos porcentajes. Con % ocurr. y % duración altos en el mismo rango, el tiempo viene del volumen: para reducirlo, disminuya el número de ocurrencias. Con la mayor parte de las ocurrencias en un rango rápido y la mayor parte de la duración en un rango lento, dominan pocas ocurrencias lentas: busque las llamadas en las que cayeron (llamadas más largas).
En el informe de ejemplo, db file sequential read tiene 2 lecturas: una en el rango de 100 µs a 1 ms, con el 23,1% de la duración, y una en el de 1 a 10 ms, con el 76,9%.
Cuándo preocupa
- Lecturas de un bloque con buena parte de la duración en los rangos de 10 ms o más: el almacenamiento está lento. El hallazgo lectura lenta lleva directo a la tabla del evento, con el enlace Ver distribución de latencia.
SQL*Net message from clientcon muchas esperas en los rangos de microsegundos y de pocos milisegundos: la aplicación conversa demasiado con la base de datos. Pocas esperas largas apuntan a la demora en la propia aplicación (sesión esperando a la aplicación).log file synccon la duración en los rangos de varios milisegundos: el redo se escribe despacio; con muchas esperas cortas, son demasiados commits (espera en el commit).- Una tabla de llamada con pocas ocurrencias en los rangos de segundos: son llamadas largas, y las de nivel 0 aparecen una a una en llamadas más largas.
Adónde ir después
- Latencia del informe de ejemplo y la tabla de db file sequential read.
- Lecturas, con rangos pensados para disco y para SSD.
- Perfil del tiempo de respuesta, donde están la media, el mínimo y el máximo de cada evento.