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. |
Query per eventi correlati
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:
- Creare una nuova sessione di eventi estesi usando Management Studio o un altro strumento supportato.
- Aggiungere gli eventi
predict_function_completed
epredict_model_cache_hit
alla sessione. - Avviare la sessione di eventi estesi.
- 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: