Condividi tramite


Monitorare le istruzioni T-SQL PREDICT con eventi estesi in Machine Learning Services per SQL Server

Si applica a: SQL Server 2017 (14.x) e versioni successive Istanza gestita di SQL di Azure

Informazioni su come usare eventi estesi per monitorare le istruzioni T-SQL PREDICT e risolverne i problemi in Machine Learning Services per SQL Server.

Tabella degli eventi estesi

Gli eventi estesi seguenti sono disponibili in tutte le versioni di SQL Server che supportano l'istruzione T-SQL PREDICT.

name object_type description
predict_function_completed evento Scomposizione del tempo di esecuzione predefinita
predict_model_cache_hit evento Si verifica quando un modello viene recuperato dalla cache dei modelli per la funzione PREDICT. Usare questo evento insieme agli altri eventi predict_model_cache_* per risolvere i problemi causati dalla cache dei modelli per la funzione PREDICT.
predict_model_cache_insert evento Si verifica quando un modello viene inserito nella cache dei modelli per la funzione PREDICT. Usare questo evento insieme agli altri eventi predict_model_cache_* per risolvere i problemi causati dalla cache dei modelli per la funzione PREDICT.
predict_model_cache_miss evento Si verifica quando un modello non viene trovato all'interno della cache dei modelli per la funzione PREDICT. Se questo evento si verifica spesso, può essere necessaria una maggiore quantità di memoria per SQL Server. Usare questo evento insieme agli altri eventi predict_model_cache_* per risolvere i problemi causati dalla cache dei modelli per la funzione PREDICT.
predict_model_cache_remove evento Si verifica quando un modello viene rimosso dalla cache dei modelli per la funzione PREDICT. Usare questo evento insieme agli altri eventi predict_model_cache_* per risolvere i problemi causati dalla cache dei modelli per la funzione PREDICT.

Per visualizzare un elenco di tutte le colonne restituite per questi eventi, eseguire la query seguente in SQL Server Management Studio:

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

Esempi

Per acquisire informazioni sulle prestazioni di una sessione di assegnazione dei punteggi tramite PREDICT:

  1. Creare una nuova sessione di eventi estesi usando Management Studio o un altro strumento supportato.
  2. Aggiungere gli eventi predict_function_completed e predict_model_cache_hit alla sessione.
  3. Avviare la sessione di eventi estesi.
  4. Eseguire la query che usa PREDICT.

Nei risultati esaminare queste colonne:

  • Il valore di predict_function_completed indica il tempo impiegato dalla query per caricare il modello e assegnare i punteggi.
  • Il valore booleano di predict_model_cache_hit indica se la query ha usato o meno un modello memorizzato nella cache.

Cache dei modelli di assegnazione dei punteggi nativa

Oltre agli eventi specifici di PREDICT, è possibile usare le query seguenti per ottenere altre informazioni sul modello memorizzato nella cache e sull'uso della cache:

Visualizzare la cache dei modelli di assegnazione dei punteggi nativa:

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

Visualizzare gli oggetti nella cache dei modelli:

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

Passaggi successivi

Per altre informazioni sugli eventi estesi (talvolta denominati XEvent) e su come tenere traccia degli eventi in una sessione, vedere questi articoli: