Monitorar instruções T-SQL PREDICT com eventos estendidos nos Serviços de Machine Learning do SQL Server
Aplica-se a: SQL Server 2017 (14.x) e versões posteriores Instância Gerenciada de SQL do Azure
Saiba como usar eventos estendidos para monitorar e solucionar problemas de instruções T-SQL PREDICT nos Serviços de Machine Learning do SQL Server.
Tabela de eventos estendidos
Os seguintes eventos estendidos estão disponíveis em todas as versões do SQL Server compatíveis com a instrução T-SQL PREDICT.
name | object_type | descrição |
---|---|---|
predict_function_completed | event | Detalhamento do tempo de execução interno |
predict_model_cache_hit | event | Ocorre quando um modelo é recuperado do cache de modelo da função PREDICT. Use esse evento junto com outros predict_model_cache_* para solucionar problemas causados pelo cache de modelo da função PREDICT. |
predict_model_cache_insert | event | Ocorre quando um modelo é inserido no cache de modelo da função PREDICT. Use esse evento junto com outros predict_model_cache_* para solucionar problemas causados pelo cache de modelo da função PREDICT. |
predict_model_cache_miss | event | Ocorre quando um modelo não é encontrado no cache de modelo da função PREDICT. Ocorrências frequentes desse evento podem indicar que o SQL Server precisa de mais memória. Use esse evento junto com outros predict_model_cache_* para solucionar problemas causados pelo cache de modelo da função PREDICT. |
predict_model_cache_remove | event | Ocorre quando um modelo é removido do cache de modelo da função PREDICT. Use esse evento junto com outros predict_model_cache_* para solucionar problemas causados pelo cache de modelo da função PREDICT. |
Consultar eventos relacionados
Para exibir uma lista de todas as colunas retornadas para esses eventos, execute a seguinte consulta no SQL Server Management Studio:
SELECT *
FROM sys.dm_xe_object_columns
WHERE object_name LIKE 'predict%'
Exemplos
Para capturar informações sobre o desempenho de uma sessão de pontuação usando PREDICT:
- Crie uma nova sessão de evento estendido usando o Management Studio ou outra ferramenta compatível.
- Adicione os eventos
predict_function_completed
epredict_model_cache_hit
à sessão. - Inicie a sessão de evento estendido.
- Execute a consulta que usa PREDICT.
Nos resultados, examine estas colunas:
- O valor de
predict_function_completed
mostra quanto tempo a consulta gastou ao carregar o modelo e a pontuação. - O valor booliano de
predict_model_cache_hit
indica se a consulta usou um modelo em cache ou não.
Cache de modelo de pontuação nativa
Além dos eventos específicos de PREDICT, você pode usar as consultas a seguir para saber mais sobre o uso do cache e do modelo em cache:
Exibir o cache de modelo de pontuação nativa:
SELECT *
FROM sys.dm_os_memory_clerks
WHERE type = 'CACHESTORE_NATIVESCORING';
Exibir os objetos no cache de modelo:
SELECT *
FROM sys.dm_os_memory_objects
WHERE TYPE = 'MEMOBJ_NATIVESCORING';
Próximas etapas
Para saber mais sobre eventos estendidos (às vezes chamados de XEvents) e como rastrear eventos em uma sessão, confira estes artigos: