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시간마다 새로 고칩니다.


					측정치 필터링

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

대시보드는 세 부분으로 나뉩니다.

  1. 카운터 지표 차트 – 특정 성능 카운터 지표의 데이터를 보여 줍니다.

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

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

카운터 지표 차트

카운터 지표 차트에는 성능 카운터의 데이터가 표시됩니다. 표시되는 기본 지표는 blks_read.avgxact_commit.avg입니다. 차트 오른쪽 위 모서리에 있는 기어 모양 아이콘을 선택하여 표시할 성능 카운터를 선택할 수 있습니다.


						측정치 필터링

자세한 내용은 성능 개선 도우미 카운터 단원을 참조하십시오.

평균 활성 세션 차트

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


						측정치 필터링

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


						측정치 필터링

상위 부하 항목 테이블

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


						측정치 필터링

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

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


						측정치 필터링

Top Load Items(상위 부하 항목) 테이블에서 SQL 문과 관련된 다음과 같은 식별자(ID) 유형을 볼 수 있습니다.

  • SQL ID – 데이터베이스가 SQL 문을 고유하게 식별하기 위해 사용하는 ID입니다.

    Oracle 및 SQL Server DB 인스턴스의 경우, SQL ID를 사용하여 특정 SQL 문을 찾을 수 있습니다.

  • SQL ID 지원 – SQL ID의 해시 값입니다. 이 값은 AWS Support를 사용할 때 SQL ID를 참조하는 용도로만 사용됩니다. AWS Support는 실제 SQL ID 및 SQL 텍스트에 액세스할 수 없습니다.

  • 다이제스트 ID – 데이터베이스가 SQL 다이제스트를 고유하게 식별하기 위해 사용하는 ID입니다. SQL 다이제스트에는 리터럴이 제거되고 공백이 표준화된 SQL 문이 하나 이상 포함될 수 있습니다. 리터럴은 물음표(?)로 대체됩니다.

    MariaDB, MySQL 및 PostgreSQL용 Amazon RDS DB 인스턴스의 경우, 다이제스트 ID를 사용하여 특정 SQL 다이제스트를 찾을 수 있습니다.

    Oraclel 및 SQL Server DB 인스턴스의 경우 다이제스트 ID는 SQL ID와 동일합니다. Top Load Items(상위 부하 항목) 표의 맨 위 행은 실제 SQL 문으로서 리터럴이 포함되어 있습니다.

  • Support Digest ID(다이제스트 ID 지원) – 다이제스트 ID의 해시 값입니다. 이 값은 AWS Support를 사용할 때 다이제스트 ID를 참조하는 용도로만 사용됩니다. AWS Support는 실제 다이제스트 ID 및 SQL 텍스트에 액세스할 수 있는 권한이 없습니다.

Top Load Items(상위 부하 항목) 테이블에서 상위 문을 열어 ID를 볼 수 있습니다. 다음 이미지는 열린 상위 문을 보여 줍니다.


						SQL ID

기본 설정 아이콘을 선택하여 Top Load Items(상위 부하 항목) 테이블에 표시된 ID를 제어할 수 있습니다.


						SQL ID

기본 설정 아이콘을 선택하면 기본 설정 창이 열립니다.


						SQL ID

Top Load Items(상위 부하 항목) 테이블에 표시하려는 ID를 활성화한 후, 저장을 선택합니다.

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

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

대기 상태와 상위 SQL 쿼리를 기준으로 구분된 DB 부하가 기본 Performance Insights 대시보드 보기입니다. 이 보기는 일반적으로 성능 문제를 가장 정확하게 파악할 수 있는 조합입니다. 대기 상태를 기준으로 구분된 DB 부하는 데이터베이스의 리소스 또는 동시성 병목 현상 유무를 표시합니다. 이 경우 상위 항목 테이블의 [SQL] 부하를 야기하는 쿼리를 표시합니다.

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

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

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

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

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

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

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

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


					측정치 필터링

성능 개선 도우미 대시보드에서 더 많은 SQL 텍스트 보기

기본적으로 Top Load Items(상위 부하 항목) 표의 각 행에는 각 SQL 문에 대해 500바이트의 SQL 텍스트가 표시됩니다. SQL 문이 500바이트 이상인 경우 성능 개선 도우미 대시보드에서 해당 문을 열어 더 많은 SQL 문을 볼 수 있습니다. 성능 개선 도우미 대시보드는 SQL 문 하나에 최대 4,096바이트를 표시할 수 있습니다. 또한 표시된 SQL 문을 복사하거나 다운로드할 수 있습니다.

SQL 텍스트의 한도는 DB 엔진에 달려 있습니다. 다음과 같은 제한이 적용됩니다.

  • MySQL 및 MariaDB용 Amazon RDS – 1,024바이트

  • Amazon RDS PostgreSQLtrack_activity_query_size DB 인스턴스 파라미터로 설정

Amazon RDS PostgreSQL DB 인스턴스의 경우, track_activity_query_size DB 인스턴스 파라미터를 최대 102,400바이트까지 설정하여 SQL 텍스트의 한도를 제어할 수 있습니다. AWS Management 콘솔을 사용해 이 파라미터로 설정한 한도까지 SQL 텍스트를 다운로드할 수 있습니다. 자세한 내용은 Amazon RDS PostgreSQL DB 인스턴스에 대한 SQL 텍스트 한도 설정 단원을 참조하십시오.

중요

현재는 AWS Management 콘솔에서 더 많은 SQL 텍스트를 보고 다운로드할 수만 있습니다. AWS 성능 개선 도우미 CLI 및 API는 최대 500바이트의 텍스트를 반환할 수 있습니다.

참고

현재는 Amazon RDS Oracle 또는 SQL Server DB 인스턴스에 대해 500바이트 이상의 SQL 텍스트를 보거나 복사하거나 다운로드할 수 없습니다.

MySQL용 Amazon RDS DB 인스턴스의 경우, EU(스톡홀름) 리전에서는 더 많은 SQL 텍스트를 보는 기능이 지원되지 않습니다.

성능 개선 도우미 대시보드에서 더 많은 SQL 텍스트를 보려면

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

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

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

    500바이트 이상의 텍스트가 있는 SQL 문은 다음 이미지와 유사합니다.

    
							라지 텍스트가 포함된 SQL 문
  4. 더 많은 SQL 텍스트를 볼 SQL 문을 엽니다.

    
							더 많은 SQL 텍스트 보기

    성능 개선 도우미 대시보드는 각 SQL 문에 최대 4,096바이트를 표시할 수 있습니다.

  5. (선택 사항) Copy snippet(코드 조각 복사)을 선택하여 표시된 SQL 문을 복사하거나 Download full SQL(전체 SQL 다운로드)를 선택하여 SQL 문을 다운로드합니다.

    참고

    SQL 문을 복사하거나 다운로드하려면 팝업 차단 기능을 비활성화하십시오.

Amazon RDS PostgreSQL DB 인스턴스에 대한 SQL 텍스트 한도 설정

Amazon RDS PostgreSQL DB 인스턴스의 경우, 성능 개선 도우미 대시보드에 표시될 수 있는 SQL 텍스트의 한도를 제어할 수 있습니다.

이를 위해서는 track_activity_query_size DB 인스턴스 파라미터를 수정해야 합니다. track_activity_query_size 파라미터에 대한 기본 설정은 1,024바이트입니다.

바이트 수를 늘려 성능 개선 도우미 대시보드에서 볼 수 있는 SQL 텍스트 크기를 늘릴 수 있습니다. 파라미터의 한도는 10,240바이트입니다. track_activity_query_size DB 파라미터에 대한 자세한 내용은 PostgreSQL 설명서에서 런타임 통계를 참조하십시오.

파라미터를 수정하려면 Amazon RDS PostgreSQL DB 인스턴스와 연결된 파라미터 그룹에서 파라미터 설정을 변경하십시오.

Amazon RDS PostgreSQL DB 인스턴스에서 기본 파라미터 그룹을 사용 중인 경우, 다음 절차를 완료하십시오.

  1. 적절한 DB 엔진 및 DB 엔진 버전에 대해 새로운 DB 인스턴스 파라미터 그룹을 생성합니다.

  2. 새 파라미터 그룹에 파라미터를 설정합니다.

  3. 새 파라미터 그룹을 DB 인스턴스에 연결합니다.

DB 인스턴스 파라미터 설정에 대한 자세한 내용은 DB 파라미터 그룹의 파라미터 수정 단원을 참조하십시오.