Saltar al contenido
WaitScope Entrar Solicitar acceso (por correo) Menú

Sentencias por componente y por clase

Para cada componente del perfil y cada clase de espera, las sentencias que más tiempo gastaron en él, según el perfil exclusivo de cada sentencia.

Se aplica a: Traces 10046

Después de saber qué componente pesa, la pregunta es qué sentencia gastó ese tiempo. Esta sección responde por componente del perfil y por clase de espera, con las sentencias que más gastaron en cada uno.

Qué muestra la sección

La sección Sentencias principales por componente y por clase (en el índice, Sentencias por componente) tiene dos bloques:

  • Por componente del perfil: un grupo para cada uno de los mayores componentes del perfil que tienen tiempo en alguna sentencia, en el orden del perfil;
  • Por clase de espera: un grupo para cada clase con tiempo en alguna sentencia.

Cada grupo se abre y se cierra con un clic; el primero de cada bloque ya viene abierto. La fila del grupo muestra el nombre, el tipo (espera, cpu o no contabilizado), los segundos, la parte del tiempo total y cuántas sentencias gastaron tiempo en él.

El tiempo de cada sentencia viene de su perfil exclusivo: lo que gastó la propia sentencia, sin el SQL recursivo que dispara. Si un SELECT llama a una función que lee otra tabla, por ejemplo, la lectura cuenta en el SQL de dentro de la función, que es recursivo, y no en el SELECT.

Cómo leerla

Columnas de un grupo
ColumnaQué indica
#La posición de la sentencia en Sentencias SQL, con un enlace a su detalle.
Tiempo (s)Cuánto gastó la sentencia en el componente o en la clase.
% del totalLa parte de la sentencia en el tiempo del grupo, y no en el tiempo total de la sesión. El peso del grupo en el tiempo total está en la fila del grupo.
SQL IDEl sql_id de la sentencia. En blanco en la fila de una forma, porque cada variante tiene el suyo.
TextoEl comienzo del texto de la sentencia, con un enlace al detalle. En la fila de una forma, que suma sentencias que solo difieren en los literales, la etiqueta N variantes va antes del texto (las variantes en las listas).

La suma de la columna % del total de un grupo puede quedar por debajo del 100%. Parte del tiempo no es de ninguna sentencia: el tiempo no contabilizado entre llamadas y las esperas sin cursor. Parte puede ser de sentencias fuera de la lista.

Cada grupo muestra hasta 10 sentencias, o el número elegido en Sentencias por lista, en la parte superior del informe. Cuando hay más, el grupo termina con N sentencias más gastaron tiempo aquí; aumente el número en la parte superior de la página para verlas.

En el informe de ejemplo, el grupo de db file sequential read suma 0,001 s, el 18,5% del tiempo total: la sentencia #1 tiene el 76,9% de ese tiempo y la sentencia #2, que es recursiva, el 23,1%.

Cuándo preocupa

  • Una sentencia concentra casi todo el tiempo del componente mayor: ataque esa sentencia, por el detalle y por el plan.
  • El tiempo del componente se reparte entre muchas sentencias parecidas: el problema es un patrón de la aplicación, no un SQL. Compruebe si los textos solo cambian en los literales (textos compartibles).
  • Una sentencia recursiva aparece al principio de un grupo de lectura o de CPU: el costo está en la función o en el trigger, no en la sentencia que llamó la aplicación (SQL recursivo).

Adónde ir después

Actualizado el 29/10/2026. Informar un error en esta página