Supervisar instrucciones de T-SQL PREDICT con eventos extendidos en SQL Server Machine Learning Services

Se aplica a: SQL Server 2017 (14.x) y versiones posteriores Azure SQL Managed Instance

Obtenga información sobre cómo usar eventos extendidos para supervisar y solucionar problemas de instrucciones de T-SQL PREDICT en SQL Server Machine Learning Services.

Tabla de eventos extendidos

Los siguientes eventos extendidos están disponibles en todas las versiones de SQL Server que admiten instrucciones de T-SQL PREDICT.

name object_type description
predict_function_completed event Detalles del tiempo de ejecución integrado
predict_model_cache_hit event Se produce cuando se recupera un modelo de la caché del modelo de la función PREDICT. El uso de este evento junto con otros eventos predict_model_cache_* permite solucionar problemas causados por la caché del modelo de la función PREDICT.
predict_model_cache_insert event Se produce cuando se inserta un modelo en la caché del modelo de la función PREDICT. El uso de este evento junto con otros eventos predict_model_cache_* permite solucionar problemas causados por la caché del modelo de la función PREDICT.
predict_model_cache_miss event Se produce cuando no se encuentra un modelo en la caché del modelo de la función PREDICT. Las apariciones frecuentes de este evento podrían indicar que SQL Server necesita más memoria. El uso de este evento junto con otros eventos predict_model_cache_* permite solucionar problemas causados por la caché del modelo de la función PREDICT.
predict_model_cache_remove event Se produce cuando se quita un modelo de la caché del modelo para la función PREDICT. El uso de este evento junto con otros eventos predict_model_cache_* permite solucionar problemas causados por la caché del modelo de la función PREDICT.

Para ver una lista de todas las columnas devueltas para estos eventos, ejecute la siguiente consulta en SQL Server Management Studio:

SELECT *
FROM sys.dm_xe_object_columns
WHERE object_name LIKE 'predict%'

Ejemplos

Para capturar información sobre el rendimiento de una sesión de puntuación mediante PREDICT:

  1. Cree una nueva sesión de eventos extendidos con Management Studio u otra herramienta compatible.
  2. Agregue los eventos predict_function_completed y predict_model_cache_hit a la sesión.
  3. Inicie la sesión de eventos extendidos.
  4. Ejecute la consulta que usa PREDICT.

En los resultados, revise estas columnas:

  • El valor de predict_function_completed muestra la cantidad de tiempo que la consulta dedicó a cargar el modelo y la puntuación.
  • El valor booleano de predict_model_cache_hit indica si la consulta usó o no un modelo almacenado en caché.

Caché del modelo de puntuación nativo

Además de los eventos específicos de la predicción (PREDICT), puede utilizar las siguientes consultas para obtener más información sobre el uso de la caché y el modelo en caché:

Ver la caché del modelo de puntuación nativo:

SELECT *
FROM sys.dm_os_memory_clerks
WHERE type = 'CACHESTORE_NATIVESCORING';

Ver los objetos en la caché del modelo:

SELECT *
FROM sys.dm_os_memory_objects
WHERE TYPE = 'MEMOBJ_NATIVESCORING';

Pasos siguientes

Para obtener más información acerca de los eventos extendidos (a veces denominados XEvents) y cómo realizar un seguimiento de los eventos de una sesión, vea estos artículos: