SQL Server Machine Learning Services에서 확장 이벤트를 사용하여 PREDICT T-SQL 문 모니터링

적용 대상: SQL Server 2017(14.x) 이상 Azure SQL Managed Instance

확장 이벤트를 사용하여 SQL Server Machine Learning Services에서 PREDICT T-SQL 문을 모니터링하고 문제를 해결하는 방법에 대해 알아봅니다.

확장 이벤트 테이블

PREDICT T-SQL 문을 지원하는 모든 버전의 SQL Server에서 다음 확장 이벤트를 사용할 수 있습니다.

name object_type description
predict_function_completed 이벤트 기본 제공 실행 시간 중단점
predict_model_cache_hit 이벤트 PREDICT 함수 모델 캐시에서 모델을 검색할 때 발생합니다. 다른 predict_model_cache_* 이벤트와 함께 이 이벤트를 사용하여 PREDICT 함수 모델 캐시에서 발생한 문제를 해결하세요.
predict_model_cache_insert 이벤트 모델이 PREDICT 함수 모델 캐시에 삽입될 때 발생합니다. 다른 predict_model_cache_* 이벤트와 함께 이 이벤트를 사용하여 PREDICT 함수 모델 캐시에서 발생한 문제를 해결하세요.
predict_model_cache_miss 이벤트 PREDICT 함수 모델 캐시에서 모델을 찾을 수 없을 때 발생합니다. 이 이벤트가 자주 발생하면 SQL Server에 더 많은 메모리가 필요함을 나타낼 수 있습니다. 다른 predict_model_cache_* 이벤트와 함께 이 이벤트를 사용하여 PREDICT 함수 모델 캐시에서 발생한 문제를 해결하세요.
predict_model_cache_remove 이벤트 PREDICT 함수를 위해 모델 캐시에서 모델을 제거할 때 발생합니다. 다른 predict_model_cache_* 이벤트와 함께 이 이벤트를 사용하여 PREDICT 함수 모델 캐시에서 발생한 문제를 해결하세요.

이러한 이벤트에 대해 반환된 모든 열의 목록을 보려면 SQL Server Management Studio에서 다음 쿼리를 실행합니다.

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

예제

PREDICT를 사용하여 점수 매기기 세션의 성능에 대한 정보를 캡처하려면 다음을 수행합니다.

  1. Management Studio 또는 지원되는 다른 도구를 사용하여 새 확장 이벤트 세션을 만듭니다.
  2. predict_function_completedpredict_model_cache_hit 이벤트를 세션에 추가합니다.
  3. 확장 이벤트 세션을 시작합니다.
  4. PREDICT를 사용하는 쿼리를 실행합니다.

결과에서 다음 열을 검토합니다.

  • predict_function_completed의 값은 쿼리가 모델을 로드하고 점수를 매기는 데 소요된 시간을 보여줍니다.
  • predict_model_cache_hit의 부울 값은 쿼리가 캐시된 모델을 사용했는지 여부를 나타냅니다.

네이티브 점수 매기기 모델 캐시

PREDICT와 관련된 이벤트 외에도 다음 쿼리를 사용하여 캐시된 모델 및 캐시 사용량에 대한 자세한 정보를 가져올 수 있습니다.

네이티브 점수 매기기 모델 캐시를 봅니다.

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

모델 캐시에서 개체를 봅니다.

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

다음 단계

확장 이벤트(XEvents라고도 함) 및 세션에서 이벤트를 추적하는 방법에 대한 자세한 내용은 다음 문서를 참조하세요.