Aurora PostgreSQL용 쿼리 실행 계획 및 피크 메모리 모니터링 - Amazon Aurora

Aurora PostgreSQL용 쿼리 실행 계획 및 피크 메모리 모니터링

Aurora PostgreSQL DB 인스턴스에서 쿼리 실행 계획을 모니터링하여 현재 데이터베이스 부하에 영향을 미치는 실행 계획을 감지하고, aurora_compute_plan_id 파라미터를 사용하여 시간 경과에 따른 실행 계획의 성능 통계를 추적할 수 있습니다. 쿼리가 실행될 때마다 쿼리에서 사용하는 실행 계획에 식별자가 할당되고 동일한 계획의 후속 실행에서 동일한 식별자가 사용됩니다.

aurora_compute_plan_id는 Aurora PostgreSQL 버전 14.10, 15.5 이상 버전의 DB 파라미터 그룹에서 기본적으로 사용 설정되어 있습니다. 계획 식별자 할당은 기본 동작이며 파라미터 그룹에서 aurora_compute_plan_id를 OFF로 설정하여 해제할 수 있습니다.

이 계획 식별자는 용도가 다른 여러 유틸리티에서 사용됩니다.

DB 인스턴스의 쿼리 피크 메모리 사용량을 모니터링하여 다음 버전에서 데이터베이스 메모리 사용량을 높이는 쿼리를 감지할 수 있습니다.

  • 16.3 이상의 모든 버전

  • 15.7 이상 버전

  • 14.12 이상 버전

쿼리가 실행될 때마다 쿼리에 사용된 피크 메모리가 추적됩니다. 쿼리는 일반적으로 여러 번 실행됩니다. 각 쿼리에 대해 모든 실행의 평균, 최소 및 최대 메모리 사용량 값을 볼 수 있습니다.

Aurora 함수를 사용하여 쿼리 실행 계획 및 피크 메모리에 액세스

aurora_compute_plan_id를 사용하면 다음 함수를 사용하여 실행 계획에 액세스할 수 있습니다.

  • aurora_stat_activity

  • aurora_stat_plans

쿼리 피크 메모리에는 쿼리 처리가 시작되기 전에 할당된 메모리가 포함되지 않습니다. 피크 메모리 사용량은 각 쿼리의 계획 및 실행 단계에서 개별적으로 추적 및 보고됩니다.

쿼리 피크 메모리를 이해합니다.

다음 함수를 사용하여 쿼리 피크 메모리 통계에 액세스할 수 있습니다.

  • aurora_stat_statements

  • aurora_stat_plans

이러한 함수에 관한 자세한 내용은 Aurora PostgreSQL 함수 참조 섹션을 참조하세요.

Aurora PostgreSQL 쿼리 실행 계획에 대한 파라미터 참조

DB 파라미터 그룹의 아래 파라미터를 사용하여 쿼리 실행 계획을 모니터링할 수 있습니다.

참고

aurora_stat_plans.with_* 파라미터 구성은 새로 캡처한 계획에만 적용됩니다.

aurora_compute_plan_id

계획 식별자가 할당되지 않도록 하려면 off로 설정하세요.

기본값 허용된 값 설명
켜짐 0(꺼짐) 계획 식별자가 할당되지 않도록 하려면 off로 설정하세요.
1(켜짐) 계획 식별자를 할당하려면 on으로 설정합니다.

aurora_stat_plans.minutes_until_recapture

계획이 다시 캡처되기까지 걸리는 시간(분)입니다. 기본값은 0이며, 이 경우 계획을 다시 캡처할 수 없습니다. aurora_stat_plans.calls_until_recapture 임계값을 초과한 경우 계획을 다시 캡처할 수 있습니다.

기본값 허용된 값 설명
0 0-1073741823

계획이 다시 캡처되기까지 걸리는 시간(분)을 설정합니다.

aurora_stat_plans.calls_until_recapture

플랜이 다시 캡처되기 전 해당 플랜을 호출한 횟수입니다. 기본값은 0이며, 이 경우 해당 횟수만큼 플랜이 호출된 후에는 계획을 다시 캡처할 수 없습니다. aurora_stat_plans.minutes_until_recapture 임계값을 초과한 경우 계획을 다시 캡처할 수 있습니다.

기본값 허용된 값 설명
0 0-1073741823

플랜이 다시 캡처되기 전까지 가능한 호출 횟수를 설정합니다.

aurora_stat_plans.with_costs

예상 비용이 포함된 EXPLAIN 계획을 캡처합니다. 허용 값은 on, off입니다. 기본값은 on입니다.

기본값 허용된 값 설명
켜짐 0(꺼짐)

각 계획 노드의 예상 비용 및 행을 표시하지 않습니다.

1(켜짐)

각 계획 노드의 예상 비용과 행을 표시합니다.

aurora_stat_plans.with_analyze

ANALYZE를 사용하여 EXPLAIN 계획을 제어합니다. 이 모드는 계획을 처음 캡처할 때만 사용됩니다. 허용 값은 on, off입니다. 기본값은 off입니다.

기본값 허용된 값 설명
0(꺼짐)

계획의 실제 실행 시간 통계는 포함하지 않습니다.

1(켜짐)

계획의 실제 실행 시간 통계를 포함합니다.

aurora_stat_plans.with_timing

ANALYZE 사용 시 설명에 계획 타이밍이 캡처됩니다. 기본값은 on입니다.

기본값 허용된 값 설명
켜짐 0(꺼짐)

실제 시작 시간 및 각 계획 노드에서 소요된 시간을 포함하지 않습니다.

1(켜짐)

실제 시작 시간 및 각 계획 노드에서 소요된 시간을 포함합니다.

aurora_stat_plans.with_buffers

ANALYZE 사용 시 설명에 계획 버퍼 사용량 통계가 캡처됩니다. 기본값은 off입니다.

기본값 허용된 값 설명
0(꺼짐)

버퍼 사용량에 대한 정보를 포함하지 않습니다.

1(켜짐)

버퍼 사용에 대한 정보를 포함합니다.

aurora_stat_plans.with_wal

ANALYZE 사용 시 설명에 계획 WAL 사용량 통계가 캡처됩니다. 기본값은 off입니다.

기본값 허용된 값 설명
0(꺼짐)

WAL 레코드 생성에 대한 정보를 포함하지 않습니다.

1(켜짐)

WAL 레코드 생성에 대한 정보를 포함합니다.

aurora_stat_plans.with_triggers

ANALYZE 사용 시 설명에 계획 트리거 실행 통계가 캡처됩니다. 기본값은 off입니다.

기본값 허용된 값 설명
0(꺼짐)

트리거 실행 통계를 포함하지 않습니다.

1(켜짐)

트리거 실행 통계를 포함합니다.