Actualmente estoy estudiando para SQL 70-433 (el examen de certificación de Microsoft), y estoy muy confundido acerca de la métrica de rendimiento "costo de consulta".
Según cualquier documentación que pude encontrar a través de Google, el costo de la consulta es una cifra porcentual y representa el porcentaje de todo el lote ocupado por una parte de él. Esto ya me pareció un poco extraño, ya que estoy interesado en el mérito absoluto de una consulta en particular, en lugar de su mérito en relación con otras consultas que aparecen junto a ella.
Pero luego pensé, bueno, tal vez lo que se espera que hagas es hacer dos consultas alternativas una al lado de la otra, ejecutarlas como "un lote", y luego la que tenga un costo menor al 50% es la ganadora.
Pero la discusión sobre el costo de la consulta en el capítulo 6, lección uno del Kit de entrenamiento SQL 70-433 de Microsoft no parece tener ninguna relación con esto.
Aquí hay un ejemplo: Muestran una consulta que contiene dos subconsultas correlacionadas y luego mejoran reemplazando las subconsultas con una APLICACIÓN EXTERNA. El resultado: "Esta consulta tiene un costo de aproximadamente 76, mientras que el costo de la primera consulta fue el doble, alrededor de 151." Luego mejoran aún más la consulta y reducen el costo de 76 a 3.6. No implican que estas cifras sean porcentajes, mientras que implican que son cifras absolutas que se relacionan con la consulta como un objeto independiente, sin referencia a ninguna otra consulta. Y de todos modos, ¿cómo podría la primera consulta tener un costo del 151%?
Más adelante en el capítulo, muestran una captura de pantalla de un plan de ejecución que tiene tres partes. El primero dice "Costo: 0%", el segundo dice "Costo: 1%" y el último dice "Costo: 99%", pero el texto (del libro en sí) debajo de la captura de pantalla "El costo de esta consulta es 0.56" . Supongo que significan algún otro tipo de costo, pero no puedo encontrar referencias a él en otro lado.
Alguien puede ayudar? Estoy completamente confundido