Database Engine Tuning Advisor를 통한 Query Tuning

Posted by Alvin You
2015. 4. 16. 09:25 Dynamics AX/Performance

Dynamics AX의 성능을 올리는 방법 중 하나는 SQL Server에 만들어진 AX Database에 대한 Tuning 을 진행하는 방법도 있습니다. Tuning을 위해 SQL Server에서 제공되는 Analyze Query in Database Engine Tuning Advisor를 실행합니다.

Analyze Query in Database Engine Tuning Advisor를 실행 후 Start Analysis 버튼을 눌러, AX에서 사용 중인 Query에 대한 분석을 진행합니다.

분석이 끝나면, 아래 화면과 같이 Index 생성, Statistics 생성등과 같이, 해당 Query의 성능을 높이기 위한 방법들을 DETA(Database Engine Tuning Advisor)에서 보여줍니다.

Definition 칼럼에서 제공되는 이런 내용들을 Database에 적용 후 다시 DETA를 이용한 분석 진단을 진행해 봅니다.

이런 반복적인 과정을 통해서 Dynamics AX Performance를 높일 수 있습니다.

'Dynamics AX > Performance' 카테고리의 다른 글

Dynamics AX Trace Parser 사용법  (0) 2015.04.15
효율적인 SQL문 작성하기  (0) 2015.04.15
X++ 코드 실행시간 계산하기  (0) 2015.04.15

Dynamics AX Trace Parser 사용법

Posted by Alvin You
2015. 4. 15. 13:23 Dynamics AX/Performance

Dynamics AX Trace Parser는 AOS Server와 Client간의 User Session, Call Trees, SQL Statements, Execution durations과 같은 정보를 모아 분석할 수 있는 환경을 제공합니다.

Trace 파일 생성을 위해 아래와 같이 CusTransTracing Class와 Main Method를 작성했습니다.

Trace 파일 수집을 위해서 Tools > Tracing cockpit 메뉴를 실행합니다.

[Tracing cockpit 화면]

Start trace 버튼을 눌러 Trace 파일이 저장될 공간과 이름을 C:\Temp\trace.etl 파일로 지정합니다.

이후 CustTransTracing Class를 실행시킨 후 Stop Trace 버튼을 눌러 Trace를 종료합니다.

Open Trace 버튼을 눌러 Microsoft Dynamics AX Trace Parser 프로그램을 띄웁니다. AX Trace Parser는 아래 그림과 같이 MS Dynamics AX 2012 프로그램 그룹안에서 실행할 수도 있습니다.

[Microsoft Dynamics AX Trace Parser 실행 화면]

MS Dynamics AX Trace Parser를 이용하면 개발되어 실행되는 모듈의 Class 정보, Class를 통해서 실행되는 SQL 문과 실행시간 등을 확인할 수 있습니다. 이렇게 수집된 자료를 분석하면, AX Performance를 높일 수 있는 Tuning Point를 발견해 성능 개선을 해 나갈 수 있습니다.

효율적인 SQL문 작성하기

Posted by Alvin You
2015. 4. 15. 11:47 Dynamics AX/Performance

아래 2개의 Table Method는 똑 같은 결과를 가져오지만, 데이터베이스의 Round Trip을 줄인 findByCustAccount2 코드가 더 효율적인 코드라고 볼 수 있습니다.

 

 

X++ 코드 실행시간 계산하기

Posted by Alvin You
2015. 4. 15. 11:27 Dynamics AX/Performance

아래 코드를 이용하면, AX로 개발된 코드의 실행시간을 계산할 수 있습니다.