Opción Optimizar para cargas de trabajo ad hoc

La opción Optimizar para cargas de trabajo ad hoc se utiliza para mejorar la eficiencia de la memoria caché del plan para cargas de trabajo que contienen muchos lotes ad hoc de uso único. Cuando esta opción está establecida en 1, Motor de base de datos almacena un pequeño código auxiliar del plan compilado en la memoria caché del plan al compilar un lote por primera vez, en lugar del plan compilado completo. Esto ayuda a disminuir la demanda de memoria al impedir que la memoria caché del plan se llene de planes compilados que no se reutilizan.

El código auxiliar del plan compilado permite que Motor de base de datos reconozca que este lote ad hoc se ha compilado antes, pero que sólo se ha almacenado un código auxiliar del plan compilado, de modo que cuando se invoca de nuevo este lote (compilado o ejecutado), Motor de base de datos compila el lote, quita de la memoria caché del plan el código auxiliar del plan compilado y agrega el plan compilado completo a la memoria caché del plan.

Establecer la opción Optimizar para cargas de trabajo ad hoc en 1 afecta sólo a los planes nuevos; los planes que ya están en la memoria caché del plan no resultan afectados.

El código auxiliar del plan compilado es uno de los elementos cacheobjtypes mostrados por la vista de catálogo sys.dm_exec_cached_plans. Tiene un identificador de sql e identificador del plan único. El código auxiliar del plan compilado no tiene un plan de ejecución asociado a él por lo que, al consultar el identificador del plan, no se devolverá un plan de presentación XML.