optimize for ad hoc workloads (opción de configuración del servidor)

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, el Motor de base de datos almacena un pequeño código auxiliar del plan compilado en la caché de planes 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 solo 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 solo 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.

La marca de seguimiento 8032 revierte los parámetros de límite de caché al valor de SQL Server 2005 RTM que, en general, permite que las memorias caché sean mayores. Use este valor cuando las entradas de caché que se reutilizan con frecuencia no quepan en la memoria caché y cuando la opción de configuración del servidor Optimizar para cargas de trabajo ad hoc no haya podido resolver el problema con la caché de planes.

Advertencia

La marca de seguimiento 8032 puede ocasionar la degradación del rendimiento si las memorias caché grandes suponen que haya menos memoria disponible para otros consumidores de memoria, como el grupo de búferes.

Consulte también

sys.dm_exec_cached_plans (Transact-SQL)
Opciones de configuración de servidor (SQL Server)