Azure SQL에서 실행중인 DB를 매우 심하게 분석하고 있습니다. 1750 DTU를 사용할 수있는 프리미엄급이며, 때때로 DTU를 최대한 활용할 수 있습니다.Azure SQL - DTU CPU 사용량 차이
필자는 저장된 procs를 통해 다양한 querys 및 끔찍한 데이터 액세스 패턴을 확인 했으므로로드가 줄어 들었습니다. 그러나 아래 이미지의 DTU와 CPU 사용량 사이에는 여전히 엄청난 불균형이 있습니다. azure sql의 "Query Performance Insight"에서 볼 수있는 다른 모든 이미지는 대부분의 경우 CPU 사용량과 일치하는 DTU 라인을 보여줍니다. 응용 프로그램을 사용하는 각 사용자에 대해,이 ontop이 앉아 C#을 응용 프로그램을 보면
DTU (in red) to CPU usage per query
, 그것은 SQL 사용자를 생성하고, 연결 문자열에 사용자가 DB에 접근하는 것을 사용한다. 즉, 연결 풀링이 사용되지 않아 SQL Azure DB에서 많은 수의 활성 사용자/세션이 발생합니다. DTU 사용률이 높은 이유가 이것이 유일한 이유일까요?아니면 Azure 포털에서 볼 수없는 IO와 관련하여 뭔가를 놓칠 수 있습니까?
감사 닐
편집 : 추가 세션과 노동자 이미지! 그 메신저를 기반으로
지금 convinved하지 ..의 세션 비율 무엇인가? 그것의 10 %가 아니라 10 %가 무엇입니까? 허용되는 최대 값은?
Edit2가 : 자세한 통계를 추가 :
내가 믿는 보라색 스파이크 그래서 무시할 수 색인화입니다 !
쿼리 저장소에서 가장 많은 CPU 시간을 차지하는 부분을 살펴보십시오. – leppie
그래, 내가 그랬지, 내가 첨부 된 사진에서 볼 수 있듯이 상위 20 개의 쿼리에 대한 CPU 사용량은 약 5-10 % 만 사용하면 DTU 사용량이 항상 약 30 % 높고 때로는 급증하는 것을 볼 수 있습니다 100 % DTU 사용에 가깝게 !! 다른 DB는 DTU와 CPU가 일반적으로 서로를 추적합니다. https://acom.azurecomcdn.net/80C57D/cdn/mediahandler/docarticles/dpsmedia-prod/azure.microsoft.com/en-us/documentation/articles/sql-database -query-performance/20160817102412/performance.png – user1957687
쿼리 ID 122가 61.5 %를 사용 중입니다! 상위 5 개를 합치면 122 개를 향상시킬 수 있는지 85 %가 넘을 것입니다. 가능한 경우 쿼리 계획을 게시하십시오. – leppie