Aurora PostgreSQL에서 로컬 쓰기 전달 모니터링
다음 섹션을 사용하면 관련 CloudWatch 지표 및 대기 이벤트를 포함하여 Aurora PostgreSQL 클러스터의 로컬 쓰기 전달을 모니터링하여 성능을 추적하고 잠재적 문제를 식별할 수 있습니다.
쓰기 전달을 위한 Amazon CloudWatch 지표 및 Aurora PostgreSQL 상태 변수
다음 Amazon CloudWatch 지표는 하나 이상의 읽기 전용 복제본에서 쓰기 전달을 사용하는 라이터 DB 인스턴스에 적용됩니다.
CloudWatch 지표 | 단위 및 설명 |
---|---|
|
개수(초당). 이 라이터 DB 인스턴스에서 초당 처리되는 전달된 DML 문 수입니다. |
|
개수. 전달된 쿼리를 처리하는 이 라이터 DB 인스턴스의 열린 세션 수입니다. |
|
개수. 라이터 DB 인스턴스에 있는 전달된 세션의 총 개수입니다. |
다음 CloudWatch 지표는 각 읽기 전용 복제본에 적용됩니다. 이러한 지표는 로컬 쓰기 전달이 활성화된 DB 클러스터의 각 리더 DB 인스턴스에서 측정됩니다.
CloudWatch 지표 | 단위 및 설명 |
---|---|
|
개수(초당). 이 복제본이 초당 전달하는 세션의 커밋 수입니다. |
|
밀리초. 복제본에 있는 전달된 DML의 평균 응답 시간(밀리초)입니다. |
|
개수(초당). 이 복제본에서 초당 처리되는 전달된 DML 문 수입니다. |
|
개수. 최대 연결 또는 최대 쓰기 전달 연결 한도에 도달하여 라이터 DB 인스턴스에서 거부한 세션 수입니다. |
|
개수. 복제본 인스턴스에서 로컬 쓰기 전달을 사용하는 세션 수입니다. |
|
밀리초. 복제본이 라이터 DB 인스턴스의 LSN과 일치할 때까지 기다리는 평균 대기 시간(밀리초)입니다. 리더 DB 인스턴스가 대기하는 정도는 apg_write_forward.consistency_mode 설정에 따라 다릅니다. 이 설정에 대한 자세한 내용은 Aurora PostgreSQL에서 쓰기 전달에 대한 구성 파라미터 섹션을 참조하세요. |
Aurora PostgreSQL에서 로컬 쓰기 전달을 위한 대기 이벤트
Amazon Aurora는 Aurora PostgreSQL에서 쓰기 전달을 사용할 때 다음과 같은 대기 이벤트를 생성합니다.
주제
IPC:AuroraWriteForwardConnect
이 IPC:AuroraWriteForwardConnect
이벤트는 읽기 전용 복제본의 백엔드 프로세스가 라이터 DB 인스턴스에 대한 연결이 열릴 때까지 기다리고 있을 때 발생합니다.
대기 증가의 가능한 원인
이 이벤트는 읽기 전용 복제본에서 라이터 노드로의 연결 시도 횟수가 늘어날수록 증가합니다.
작업
읽기 전용 복제본에서 라이터 노드로의 동시 연결 수를 줄이세요.
IPC:AuroraWriteForwardConsistencyPoint
IPC:AuroraWriteForwardConsistencyPoint
이벤트는 전달된 쓰기 작업의 결과가 현재 리전으로 복제될 때까지 읽기 전용 복제본에서 노드에서 대기하는 시간을 나타냅니다. 이 이벤트는 세션 수준 apg_write_forward.consistency_mode
파라미터가 다음 중 하나로 설정된 경우에만 생성됩니다.
SESSION
- 읽기 전용 복제본에 대한 쿼리는 해당 세션에서 수행한 모든 변경의 결과를 대기합니다.GLOBAL
- 읽기 전용 복제본에 대한 쿼리는 해당 세션의 변경 사항과 라이터 DB 인스턴스 및 읽기 전용 복제본 모두에서 커밋된 모든 변경 사항의 결과를 기다립니다.
apg_write_forward.consistency_mode
파라미터 설정에 대한 자세한 내용은 Aurora PostgreSQL에서 쓰기 전달에 대한 구성 파라미터 섹션을 참조하세요.
대기 증가의 가능한 원인
대기 시간이 길어지는 일반적인 원인은 다음과 같습니다.
Amazon CloudWatch
ReplicaLag
지표로 측정한 바와 같이 복제 지연이 증가했습니다. 이 지표에 대한 자세한 정보는 Aurora PostgreSQL 복제 모니터링 섹션을 참조하세요.라이터 DB 인스턴스 또는 읽기 전용 복제본에 대한 로드가 증가했습니다.
작업
애플리케이션 요구 사항에 따라 일관성 모드를 변경합니다.
IPC:AuroraWriteForwardExecute
IPC:AuroraWriteForwardExecute
이벤트는 읽기 전용 복제본의 백엔드 프로세스가 전달된 쿼리가 완료되고 DB 클러스터의 라이터 노드로부터 결과를 얻기를 기다리고 있을 때 발생합니다.
대기 증가의 가능한 원인
대기가 늘어나는 일반적인 원인은 다음과 같습니다.
라이터 노드에서 많은 수의 행을 가져옵니다.
라이터 노드와 읽기 전용 복제본 사이의 네트워크 지연 시간이 증가하면 읽기 전용 복제본이 라이터 노드로부터 데이터를 수신하는 데 걸리는 시간이 늘어납니다.
읽기 전용 복제본의 로드가 증가하면 읽기 전용 복제본에서 라이터 노드로 쿼리 요청을 전송하는 것이 지연될 수 있습니다.
라이터 노드의 로드가 증가하면 라이터 노드에서 읽기 전용 복제본으로의 데이터 전송이 지연될 수 있습니다.
작업
대기 이벤트의 원인에 따라 다른 작업을 권장합니다.
필요한 데이터만 검색하도록 쿼리를 최적화합니다.
데이터 조작 언어(DML) 작업을 최적화하여 필요한 데이터만 수정합니다.
읽기 전용 복제본 또는 라이터 노드가 CPU 또는 네트워크 대역폭의 제약을 받는 경우 CPU 용량이 더 크거나 네트워크 대역폭이 더 큰 인스턴스 유형으로 변경하는 것이 좋습니다.
IPC:AuroraWriteForwardGetGlobalConsistencyPoint
IPC:AuroraWriteForwardGetGlobalConsistencyPoint
이벤트는 글로벌 일관성 모드를 사용하는 읽기 전용 복제본의 백엔드 프로세스가 쿼리를 실행하기 전에 라이터 노드로부터 글로벌 일관성 보장 지점을 가져오기를 기다리고 있을 때 발생합니다.
대기 증가의 가능한 원인
대기가 늘어나는 일반적인 원인은 다음과 같습니다.
읽기 전용 복제본과 라이터 노드 사이의 네트워크 지연 시간이 증가하면 읽기 전용 복제본이 라이터 노드로부터 데이터를 수신하는 데 걸리는 시간이 늘어납니다.
읽기 전용 복제본의 로드가 증가하면 읽기 전용 복제본에서 라이터 노드로 쿼리 요청을 전송하는 것이 지연될 수 있습니다.
라이터 노드의 로드가 증가하면 라이터 노드에서 읽기 전용 복제본으로의 데이터 전송이 지연될 수 있습니다.
작업
대기 이벤트의 원인에 따라 다른 작업을 권장합니다.
애플리케이션 요구 사항에 따라 일관성 모드를 변경합니다.
읽기 전용 복제본 또는 라이터 노드가 CPU 또는 네트워크 대역폭의 제약을 받는 경우 CPU 용량이 더 크거나 네트워크 대역폭이 더 큰 인스턴스 유형으로 변경하는 것이 좋습니다.
IPC:AuroraWriteForwardXactAbort
IPC:AuroraWriteForwardXactAbort
이벤트는 읽기 전용 복제본의 백엔드 프로세스가 원격 정리 쿼리 결과를 기다리고 있을 때 발생합니다. 쓰기 전달 트랜잭션이 중단된 후 프로세스를 적절한 상태로 되돌리기 위해 정리 쿼리가 실행됩니다. Amazon Aurora는 오류가 발견되었거나 사용자가 명시적인 ABORT
명령을 실행했거나 실행 중인 쿼리를 취소했을 때 이러한 작업을 수행합니다.
대기 증가의 가능한 원인
대기가 늘어나는 일반적인 원인은 다음과 같습니다.
읽기 전용 복제본과 라이터 노드 사이의 네트워크 지연 시간이 증가하면 읽기 전용 복제본이 라이터 노드로부터 데이터를 수신하는 데 걸리는 시간이 늘어납니다.
읽기 전용 복제본의 로드가 증가하면 읽기 전용 복제본에서 라이터 노드로 정리 쿼리 요청을 전송하는 것이 지연될 수 있습니다.
라이터 노드의 로드가 증가하면 라이터 노드에서 읽기 전용 복제본으로의 데이터 전송이 지연될 수 있습니다.
작업
대기 이벤트의 원인에 따라 다른 작업을 권장합니다.
트랜잭션이 중단된 원인을 조사하세요.
읽기 전용 복제본 또는 라이터 DB 인스턴스가 CPU 또는 네트워크 대역폭의 제약을 받는 경우 CPU 용량이 더 크거나 네트워크 대역폭이 더 큰 인스턴스 유형으로 변경하는 것이 좋습니다.
IPC:AuroraWriteForwardXactCommit
IPC:AuroraWriteForwardXactCommit
이벤트는 읽기 전용 복제본의 백엔드 프로세스가 전달된 커밋 트랜잭션 명령의 결과를 기다리고 있을 때 발생합니다.
대기 증가의 가능한 원인
대기가 늘어나는 일반적인 원인은 다음과 같습니다.
읽기 전용 복제본과 라이터 노드 사이의 네트워크 지연 시간이 증가하면 읽기 전용 복제본이 라이터 노드로부터 데이터를 수신하는 데 걸리는 시간이 늘어납니다.
읽기 전용 복제본의 로드가 증가하면 읽기 전용 복제본에서 라이터 노드로 쿼리 요청을 전송하는 것이 지연될 수 있습니다.
라이터 노드의 로드가 증가하면 라이터 노드에서 읽기 전용 복제본으로의 데이터 전송이 지연될 수 있습니다.
작업
읽기 전용 복제본 또는 라이터 노드가 CPU 또는 네트워크 대역폭의 제약을 받는 경우 CPU 용량이 더 크거나 네트워크 대역폭이 더 큰 인스턴스 유형으로 변경하는 것이 좋습니다.
IPC:AuroraWriteForwardXactStart
IPC:AuroraWriteForwardXactStart
이벤트는 읽기 전용 복제본의 백엔드 프로세스가 전달된 시작 트랜잭션 명령의 결과를 기다리고 있을 때 발생합니다.
대기 증가의 가능한 원인
대기가 늘어나는 일반적인 원인은 다음과 같습니다.
읽기 전용 복제본과 라이터 노드 사이의 네트워크 지연 시간이 증가하면 읽기 전용 복제본이 라이터 노드로부터 데이터를 수신하는 데 걸리는 시간이 늘어납니다.
읽기 전용 복제본의 로드가 증가하면 읽기 전용 복제본에서 라이터 노드로 쿼리 요청을 전송하는 것이 지연될 수 있습니다.
라이터 노드의 로드가 증가하면 라이터 노드에서 읽기 전용 복제본으로의 데이터 전송이 지연될 수 있습니다.
작업
읽기 전용 복제본 또는 라이터 노드가 CPU 또는 네트워크 대역폭의 제약을 받는 경우 CPU 용량이 더 크거나 네트워크 대역폭이 더 큰 인스턴스 유형으로 변경하는 것이 좋습니다.