Amazon Relational Database Service
사용 설명서 (API 버전 2014-10-31)

성능 개선 도우미 대시보드 사용

성능 개선 도우미 대시보드에는 성능 문제를 분석하여 해결할 수 있는 데이터베이스 성능 정보가 포함됩니다. 메인 대시보드 페이지에서 데이터베이스 부하에 대한 정보를 확인할 수 있습니다. 또한 특정 대기 상태, SQL 쿼리, 호스트 또는 사용자에 대한 세부 정보를 알아볼 수 있습니다.

성능 개선 도우미 대시보드 열기

성능 개선 도우미 대시보드는 다음 절차에 따라 확인할 수 있습니다.

AWS Management Console에서 성능 개선 도우미 대시보드를 보려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 [성능 개선 도우미]를 선택합니다.

  3. DB 인스턴스를 선택합니다. 선택한 DB 인스턴스에 대한 성능 개선 도우미 대시보드가 표시됩니다.

    성능 개선 도우미가 활성화되면 DB 인스턴스의 경우 DB 인스턴스 목록에서 세션 항목을 선택하여 대시보드에 접속할 수도 있습니다. 현재 활동에서 세션 항목은 지난 5분 동안 평균 활동 세션의 데이터베이스 로드를 보여 줍니다. 로드가 막대 모양으로 표시됩니다. 막대가 비어 있으면 DB 인스턴스가 유휴 상태입니다. 로드가 증가하면 막대가 파란색으로 채워집니다. 로드에서 DB 인스턴스 클래스의 가상 CPU(vCPU) 수를 전달하면 막대가 빨간색으로 바뀌고 병목 가능성을 나타냅니다.

    
							측정치 필터링

    다음 이미지는 DB 인스턴스의 대시보드를 보여 줍니다.

    
							측정치 필터링

성능 개선 도우미 대시보드는 기본적으로 마지막 60분 동안 수집된 데이터를 표시합니다. 하지만 마지막 5분, 60분, 5시간, 24시간 또는 1주 동안 데이터를 표시하도록 수정할 수 있습니다. 사용 가능한 모든 데이터를 볼 수도 있습니다. Performance Insight 대시보드는 새 데이터로 자동으로 고쳐집니다. 새로 고침 속도는 표시되는 데이터의 양에 따라 다릅니다.

  • 5분은 5초마다 새로 고칩니다.

  • 1시간 및 5시간은 1분마다 새로 고칩니다.

  • 24시간은 5분마다 새로 고칩니다.

  • 1주는 1시간마다 새로 고칩니다.


					측정치 필터링

성능 개선 도우미 대시보드 구성 요소

대시보드는 2개 부분으로 구분됩니다.

  1. 평균 활성 세션 차트 - 데이터베이스 부하와 DB 인스턴스 용량을 비교하여 최대 CPU 선으로 표시합니다.

  2. 상위 부하 항목 테이블 - 데이터베이스 부하에 가장 많이 영향을 미치는 항목을 보여 줍니다.

평균 활성 세션 차트

평균 활성 세션 차트는 데이터베이스 부하와 DB 인스턴스 용량의 비교 방식을 최대 CPU 선으로 표시합니다. 기본적으로 부하는 대기 상태를 기준으로 구분된 활성 세션으로 표시됩니다. 또한 SQL 쿼리, 호스트 또는 사용자로 구분된 활성 세션으로 부하를 표시하도록 선택할 수도 있습니다.


						측정치 필터링

선택한 기간의 항목 세부 정보를 범례에 표시하려면 평균 활성 세션 차트의 임의 항목 위로 마우스 포인터를 가져가면 됩니다.


						측정치 필터링

상위 부하 항목 테이블

[Top Load Items] 테이블에는 데이터베이스 부하에 영향을 끼치는 상위 항목이 표시됩니다. 기본적으로 데이터베이스 부하에 영향을 미치는 상위 SQL 쿼리가 표시됩니다. 쿼리는 구조적으로 유사한 실제 쿼리가 다수 요약되어 표시되지만 다른 파라미터가 존재할 가능성도 있습니다. 그 밖에 최상위 대기 상태, 호스트 또는 사용자를 표시하도록 선택할 수도 있습니다.


						측정치 필터링

각 상위 부하 항목과 관련된 데이터베이스 부하 비율(%)는 [DB Load by Waits] 열에 표시됩니다. 이 열에는 현재 평균 활성 세션 차트에서 어떤 구분 기준을 선택하든 그 기준에 따라 해당 항목의 부하가 반영됩니다. 예를 들어, 평균 활성 세션 차트가 호스트별로 구분되어 있고 상위 부하 항목 테이블에서 SQL 쿼리를 살펴보고 있다고 가정합니다. 이 경우 [DB Load by Waits] 막대는 관련 호스트에 대한 쿼리의 부하를 반영하며, 평균 활성 세션 차트의 해당 호스트에 컬러 코드로 매핑합니다.

또 다른 예로, 평균 활성 세션 차트가 대기 상태별로 구분되어 있고 상위 부하 항목 테이블에서 SQL 쿼리를 살펴보고 있다고 가정합니다. 이때 [DB Load by Waits] 막대는 쿼리가 영향을 미치는 대기 상태의 정도와, 대기 상태가 해당 쿼리에 영향을 미치는 정도를 크기, 세그먼트 및 컬러 코드로 표시합니다. 해당 쿼리에 영향을 미치는 대기 상태도 표시합니다.


						측정치 필터링

성능 개선 도우미 대시보드를 사용한 데이터베이스 부하 분석

평균 활성 세션 차트가 병목 현상을 보일 때는 부하가 발생하는 위치를 찾아낼 수 있습니다. 이렇게 하려면 평균 활성 세션 차트 아래에 있는 상위 부하 항목 테이블을 살펴봅니다. SQL 쿼리나 사용자 같은 특정 항목을 선택하여 드릴다운을 통해 세부 정보까지 확인할 수 있습니다.

대기 상태와 상위 SQL 쿼리를 기준으로 구분된 DB 부하가 일반적으로 성능 문제에 대해 가장 큰 인사이트를 제공하는 조합이기 때문에 성능 개선 도우미 대시보드의 기본 뷰로 사용됩니다. 대기 상태를 기준으로 구분된 DB 부하는 데이터베이스의 리소스 또는 동시성 병목 현상 유무를 표시합니다. 이 경우 상위 항목 테이블의 [SQL] 부하를 야기하는 쿼리를 표시합니다.

성능 문제를 진단하는 일반 워크플로우는 다음과 같습니다.

  1. 평균 활성 세션 차트를 보면서 데이터베이스 부하가 최대 CPU 선을 상회하는지 모니터링합니다.

  2. 상회하는 경우가 있으면 평균 활성 세션 차트를 보면서 원인이 되는 대기 상태를 식별합니다.

  3. 상위 부하 항목 테이블의 [SQL] 탭에서 어떤 쿼리가 대기 상태에 가장 큰 영향을 미치는지 모니터링하면서 부하를 야기하는 요약 쿼리를 식별합니다. [DB Load by Wait] 열을 보면 이러한 요약 쿼리를 식별할 수 있습니다.

  4. [SQL] 탭에서 요약 쿼리 중 하나를 선택하여 확장한 다음 구성하고 있는 하위 쿼리를 확인합니다.

예를 들어 다음 대시보드에서 IO:XactSync 대기 시간은 빈번한 문제입니다. [CPU] 대기 시간은 비교적 빈번하지는 않지만 부하에 여전히 중요한 역할을 합니다.

상위 부하 항목 테이블의 [SQL] 탭에서 처음 4개의 롤업 쿼리는 첫 번째 상태와 매우 밀접한 관계가 있습니다. 따라서 이러한 쿼리의 하위 쿼리까지 세부 정보를 확인해야 합니다. 이러한 쿼리가 성능 문제에 어떻게 영향을 끼치고 있는지 알아보려면 이렇게 확인해야 합니다.

마지막 3개의 롤업 쿼리는 CPU 부하에 중요한 역할을 하며, CPU 부하가 문제인지 여부를 조사하는 쿼리가 됩니다.


					측정치 필터링