공부, 기록

[AWS] Aurora 공부 3 (모니터링) 본문

공부/DATABASE

[AWS] Aurora 공부 3 (모니터링)

무는빼주세요 2024. 9. 15. 18:05

2024.07.04 - [공부/DATABASE] - [AWS] Aurora 공부 1 (아키텍처와 특징)

 

[AWS] Aurora 공부 1 (아키텍처와 특징)

1. 내부 아키텍처Aurora 는 클러스터 볼륨이라는 특수한 스토리지 구조를 가지고 있으며 단일 리전의 각기 다른 가용 영역에 구성됩니다.스토리지는 3개의 가용 영역(AZ)에 걸쳐 있는 가상 디스크

kominjae.tistory.com

 

2024.07.06 - [공부/DATABASE] - [AWS] Aurora 공부 2 (Aurora의 기능들)

 

[AWS] Aurora 공부 2 (Aurora의 기능들)

Aurora의 블루그린 배포 메이저 버전의 업그레이드의 경우 스토리지와 컴퓨팅 영역이 분리된 Aurora의 특징으로 인하여 블루/그린 배포 방식을 통하여 진행이 가능하며 블루/그린 배포의 경우 (MySQ

kominjae.tistory.com

 

2024.09.15 - [공부/DATABASE] - [AWS] Aurora 공부 3 (모니터링)

 

[AWS] Aurora 공부 3 (모니터링)

Aurora 모니터링 도구들 클라우드 워치 Amazon Aurora에서 원시 데이터를 수집한 후 판독이 가능한 지표로 실시간에 가깝게 처리합니다Amazon Aurora는 기본적으로 1분 단위로 CloudWatch에 지표 데이터를

kominjae.tistory.com

 

 

 

 

Aurora 모니터링 도구들

 

  • 클라우드 워치 

    Amazon Aurora에서 원시 데이터를 수집한 후 판독이 가능한 지표로 실시간에 가깝게 처리합니다

    Amazon Aurora는 기본적으로 1분 단위로 CloudWatch에 지표 데이터를 자동 전송합니다.
    CloudWatch 서비스를 통해 여러 클러스터를 하나의 지표로 모니터링 할 수 있습니다.CloudWatch를 통해 각 지표의 알람을 설정할 수 있습니다.

  • 향상된 모니터링

    OS 환경에 대해 더 정확한 모니터링을 제공합니다.
    Aurora 인스턴스의 Local 에이전트에 데이터를 수집하고 가져옵니다(클라우드 워치는 VM을 실행하는 하이퍼바이저에서 수집합니다).
    디폴트 수집 기간은 1분이며, 최대 1초 단위로 변경이 가능합니다.

  • 성능 개선 도우미 

    Amazon Aurora 클러스터 로드를 시각화하고 대기 시간, SQL 문, 호스트 또는 사용자를 기준으로 로드를 필터링할 수 있습니다.

    t4g.medium 이상부터 사용이 가능합니다.
    성능 개선 도우미 에이전트는 DB 호스트에서 제한된 CPU 및 메모리를 사용합니다.
    DB 로드가 높을 경우 에이전트는 데이터 수집 빈도를 줄여 성능에 미치는 영향을 제한합니다.

 

Database Load
DBLoad는 성능 개선 도우미의 주요 지표이며, DB의 세션 활동을 측정합니다. 성능 개선 도우미는 1초마다 DBLoad를 수집합니다.
Active Session : 클라이언트에서 DB에 요청 이후 응답을 대기 중인 연결 세션을 말합니다.

 

DBLoad는 waits 타입(대기 이벤트), SQL 쿼리, host, user, db 별로 집계하여 볼 수 있습니다.

Aurora MySQL의 대기 이벤트 목록

성능 개선 도우미는 활성 세션을 체크하고 이를 인스턴스의 최대 vCPU와 비교합니다.

Performance_schema와 성능 개선 도우미는 별개의 기능이지만 연결되어 있는 부분이 있습니다.

능 스키마 켜짐 관리 모드 성능 개선 도우미 행동
자동
  • 세부적인 저수준 모니터링 정보 수집
  • 1초마다 활성 세션 지표 수집
  • 병목 현상을 식별하는 데 사용할 수 있는 세부 대기 이벤트별로 분류된 DB Load 표시
수동
  • 대기 이벤트 및 SQL별 지표 수집
  • 1초가 아닌 5초마다 활성 세션 지표 수집
  • 삽입 및 전송과 같은 사용자 상태를 보고하므로 병목 현상을 식별하는 데 도움이 되지 않음
아니요 N/A
  • 대기 이벤트, SQL별 지표 또는 기타 세부적인 저수준 모니터링 정보를 수집하지 않음
  • 1초가 아닌 5초마다 활성 세션 지표 수집

성능 개선 도우미가 performance_schema를 자동으로 관리하게 하려면 performance_schema를 0으로 설정해야 합니다 (권장 구성이며 t4g.large 이상의 구성이 필요합니다).
성능 개선 보고서를 작성하여 특정 시간의 내용을 저장 할 수 있습니다(유료 등급 기능).

특정 지표를 모니터링하고 자동으로 임계값을 생성합니다(유료 등급 기능).
API 를 통해 지표를 수집할 수 있습니다.

 

DevOps Guru for RDS

 

Guru 는 머신러닝을 사용하여 성능 개선 도우미에 수집된 데이터(주로 DbLoad 항목을 주요하게 사용합니다)를 기반으로 DB 이상에 대해 추적하는 기능입니다.
성능 개선 도우미가 없으면 DevOps Guru는 자세한 분석 및 권장 사항은 포함하지 않습니다.

기능으로는 사전 예방과 사후 대응 기능을 가지고 있으며
사전 예방 기능은 문제가 발생하기 전에 문제를 일으킬 수 있는 행동을 파악합니다.
사후 대응 기능은 비정상적인 동작이 발생하는 즉시 이를 식별하는 기능입니다.

 

대시보드로 내용을 확인하며 이슈에 대하여 학습된 데이터를 기반으로 해당 상황에 맞는 조치 방안 가이드를 제공합니다.

 

 

 

Guru에서 확인되는 베이스 데이터가 긴 기간으로 설정되는 것이 아니라는 내용이 있었다.

이럴 경우 월, 분기 단위 등의 작업이 빈번한 서비스에 대해서는 정확한 분석이 진행이 안될 것 같다.

알람이 생성되는 기준 명확하지 않은 것 다.

Lock 관련 부하에서 10개 스레드에서는 알람이 생성되지 않았지만 20개 스레드에서 부터 알람이 발생하였습니다.

10개 스레드에서도 cpu 60% 사용에 lock 지표가 꽤 상승하였는데 발생하지 않았고 이에 대한 명확한 기준이 없는 것 같습니다.

https://docs.aws.amazon.com/ko_kr/devops-guru/latest/userguide/working-with-rds.analyzing.metrics.html

https://jiripik.com/2022/10/13/top-3-performance-optimization-insights-from-using-amazon-devops-guru-for-rds/

https://aws.amazon.com/ko/blogs/devops/proactive-insights-with-amazon-devops-guru-for-rds/

 

이벤트 및 로그를 활용한 모니터링

  • Aurora 이벤트

    클러스터 수준에서는 Auto Scaling, 클러스터 단위의 로그를 확인할 수 있습니다.

    인스턴스 수준에서는 Cloud Watch 알람, DB 인스턴스 수준의 최근 이벤트, 각종 로그(error, audit, slow)를 확인할 수 있습니다.
    콘솔을 통해서는 지난 24시간 동안의 이벤트를 확인 가능합니다. (cli를 사용하는 경우 최대 14일 까지 확인 가능합니다.

aws rds describe-events \
    --source-identifier seoul-test-newincliauroramysql-primary \
    --source-type db-instance \
    --start-time 2024-07-09T00:00Z \
    --end-time 2024-07-11T15:30Z

 

Aurora DB 인스턴스 로그

이벤트 로그와 마찬가지로 콘솔과 CLI로 확인 가능하다.
Aurora MySQL은 파일로 저장하는 에러 로그의 경우 30일, 슬로우, 감사 로그의 경우 24시간 이후 또는 디스크 공간의 15%가 찰 경우 오래된 로그부터 제거합니다.

Aurora MySQL은 테이블로 저장하는 경우 다음과 같은 로테이션 함수를 제공합니다.

프로시저를 두번 연속 호출할 경우 데이터를 삭제하고 디스크 공간을 회수 합니다.

-- 로그 rotate 함수
mysql.rds_rotate_slow_log, mysql.rds_rotate_general_log;

-- 로그 리스트 확인
aws rds describe-db-log-files \
--db-instance-identifier seoul-test-newincliauroramysql-primary

-- 특정 로그 전체 확인
aws rds download-db-log-file-portion \
        --db-instance-identifier seoul-test-newincliauroramysql-primary \
        --log-file-name audit/audit.log.0.2024-07-11-06-53.1

-- 특정 로그 일부 확인
aws rds download-db-log-file-portion \
        --db-instance-identifier seoul-test-newincliauroramysql-primary \
        --log-file-name audit/audit.log.0.2024-07-11-06-53.1  \
        --starting-token 0 --max-items 1000

 

CloudWatch Logs

RDS 는 DB 클러스터의 파일 시스템에 있는 로그에 대한 호스트 액세스를 제공하지 않는 대신 CloudWatch Logs로 로그를 내보내는 기능을 제공합니다.
CloudWatch Logs에 보관된 로그는 기간을 지정하지 않는 경우 무기한 보존이 됩니다. 
Aurora 생성 과정에 있었던 Log Export를 사용하면 CloudWatch Logs로 지정한 로그가 전송이 됩니다. CloudWatch → 로그 → 로그 그룹에서 클러스터별 로그를 확인할 수 있습니다.
CloudWatch Logs의 Live Trail 기능을 이용하면 온프레미스 환경에서 -tail 옵션을 사용 한 것과 유사하게 거의 실시간으로 로그를 확인 할 수 있습니다. 다만 Trail은 세션 사용 시간(분 단위)별로 비용이 발생합니다.

MySQL 모니터링 지표
분류 명칭 내용 내용 비고
커넥션 aborted_clients/sec 클라이언트가 연결을 제대로 닫지 않고 죽어서 중단된 연결 수  
aborted_connects/sec MySQL 서버에 연결하려는 시도가 실패한 횟수  
바이너리 로그 binlog_cache_disk_use/sec 트랜잭션의 명령문을 저장하기 위해 임시 파일을 사용한 트랜잭션 수 MySQL은 Commit 이전 binlog 내용을 캐시에 저장하는데
이 캐시 사이즈를 binlog_cache_size 변수로 설정.(연결된 thread 마다 할당)
트랜잭션 사이즈가 해당 변수보다 큰 경우 디스크 tmp 파일에 쓰게 된다.
binlog_cache_disk_use 는 해당 tmp 파일을 쓴 트랜잭션의 수이고
binlog_cache_use 는 버퍼 또는 임시 파일을 쓴 트랜잭션의 수 입니다.
binlog_cache_use/sec 바이너리 로그 캐시를 사용한 트랜잭션 수
네트워크 bytes_received/sec 모든 클라이언트로부터 수신된 바이트 수  
bytes_sent/sec 모든 클라이언트에 전송된 바이트 수.  
요청량 com_call_procedure/sec 사용자가 요청한 프로시저 요청 수 COM 명령어는 사용자가 직접 실행한 명령어에 대해 Count 함 (Handler 지표와의 차이점)
com_commit/sec 사용자가 요청한 Commit 수
com_delete/sec 사용자가 요청한 Delete 수
com_insert/sec 사용자가 요청한 Insert 수
com_select/sec 사용자가 요청한 Select 수
com_update/sec 사용자가 요청한 Update 수
커넥션 connections/sec MySQL 서버에 대한 연결 시도 횟수 connections는 서버 시작 후 클라이언트로부터 연결을 시도한 총 연결 수
임시테이블 created_tmp_disk_tables/sec 서버가 명령문을 실행하는 동안 생성한 디스크의 임시 테이블의 수 임시 테이블은 대량 집계, 정렬, hash join 에서 발생 할 수 있습니다.
메모리가 부족할 경우 디스크에 임시 테이블이 생성됩니다.
created_tmp_files/sec 서버가 명령문을 실행하는 동안 생성한 디스크의 임시 파일의 수
created_tmp_tables/sec 서버가 명령문을 실행하는 동안 생성한 메모리 임시 테이블의 수
지연된 행삽입 delayed_errors/sec - 지연된 행 삽입은 5.6 버전부터 더 이상 사용되지 않음.
delayed_insert_threads/sec - 지연된 행 삽입은 5.6 버전부터 더 이상 사용되지 않음.
delayed_writes/sec - 지연된 행 삽입은 5.6 버전부터 더 이상 사용되지 않음.
엔진 상태 flush_commands/sec 서버가 테이블을 플러시하는 횟수입니다 Flush Table은 열려있는 모든 테이블을 닫는 명령
요청량

handler_commit/sec 내부적으로 처리된 커밋 수  Handler 지표는 엔진 내부에서 발생하는 Count
handler_delete/sec 행을 삭제 하기 위한 요청 횟수  
handler_discover/sec - NDBCLUSTER 스토리지 엔진에 요청하여 테이블 이름을 요청한 횟수
handler_prepare/sec 쿼리 준비 단계의 횟수  
handler_read_first/sec 인덱스의 첫 번째 키 값을 패치(fetch)한 횟수 앞부분만 읽거나 스캔을 하는 경우에 증가
handler_read_key/sec 단일 행의 인덱스 키 값을 읽은 횟수. 인덱스를 통해 특정 행을 검색할 때 증가 
handler_read_last/sec 인덱스의 마지막 키를 읽은 횟수  
handler_read_next/sec 인덱스의 후속 행의 키를 읽은 횟수 인덱스 키 순서에 따라 다음 행을 읽은 횟수로
인덱스를 스캔하거나 제한적으로 범위 검색이 발생할 때 기록 (정렬된 읽기)
(인덱스 있고 범위 읽은 경우)
handler_read_prev/sec 인덱스의 이전 행의 키를 읽은 횟수 handler_read_next/sec 의 역순
handler_read_rnd/sec 고정된 위치의 특정 행을 읽은 횟수 테이블 스캔이나 인덱스 범위 스캔이 발생할 때 데이터 파일의 고정된 위치의 행을 읽은 횟수
handler_read_rnd_next/sec

고정된 위치의 특정 행에 대한 후속 행 읽기 횟수 데이터 파일에서 순차적으로 다음 행을 읽은 횟수
테이블 스캔이 발생할 경우에 증가할 수 있다
(인덱스 없이 범위 읽은 경우)
handler_rollback/sec 스토리지 엔진이 롤백 요청을 받은 횟수  
handler_savepoint/sec Savepoint를 요청한 횟수  
handler_savepoint_rollback/sec Savepoint지점으로 롤백을 요청한 횟수  
handler_update/sec 행을 업데이트 하기 위한 요청 횟수  
handler_write/sec 행을 삽입 하기 위한 요청 횟수  
버퍼풀 innodb_buffer_pool_pages_data 더티 및 클린 데이터를 포함하는 버퍼 풀 페이지 수  
innodb_buffer_pool_pages_dirty 더티 데이터를 포함하는 버퍼 풀 페이지 수   
innodb_buffer_pool_pages_flushed/sec 플러시된 버퍼 풀 페이지 수  
innodb_buffer_pool_pages_free 사용 가능한 버퍼 풀 페이지 수  
innodb_buffer_pool_pages_misc 내부 사용을 위해 따로 보관된 버퍼 풀 페이지 수  
innodb_buffer_pool_pages_total 전체 버퍼 풀 페이지 수  
innodb_buffer_pool_reads/sec 디스크에서 버퍼풀로 데이터를 읽어온 수  
innodb_buffer_pool_read_ahead/sec 미리 읽기 백그라운드 스레드가 버퍼 풀 에 읽은 페이지 수 디스크에서 데이터를 순차적으로 미리 읽어오는 횟수
innodb_buffer_pool_read_ahead_evicted/sec 더 이상 사용되지 않고 제거된 버퍼 풀 페이지 수  
innodb_buffer_pool_read_ahead_rnd/sec 무작위로 미리 읽기 횟수 디스크에서 데이터를 무작위로 미리 읽어오는 횟수
innodb_buffer_pool_read_requests/sec 버퍼 풀에 읽기 요청 수 innodb_buffer_pool_read_requests - innodb_buffer_pool_reads = 캐시 히트율 계산
innodb_buffer_pool_wait_free/sec 페이지를 읽거나 만들기 전에 빈 페이지를 기다린 횟수 버퍼풀에 꽉 차고 클린 페이지 영역 할당이 필요할 때 더티 페이지를 플러시하여 일부를 비우게 됩니다.
해당 지표는 클린 페이지가 할당되기 까지 기다린 횟수입니다.
innodb_buffer_pool_write_requests/sec 버퍼풀에 쓰기 위한 요청 수  
I/O innodb_data_fsyncs/sec fsync(디스크와 동기화) 호출 수  
innodb_data_pending_fsyncs 보류 중인 fsync(디스크 동기화) 호출 수  
innodb_data_pending_reads 보류 중인 읽기 수.  
innodb_data_pending_writes 보류 중인 쓰기 수.  
innodb_data_read/sec 서버가 시작된 이후 읽은 데이터의 양(바이트)  
innodb_data_reads/sec 총 데이터 읽기 수(OS 파일 읽기)  
innodb_data_writes/sec 쓰기 작업의 수  
innodb_data_written/sec 지금까지 작성된 데이터의 양(바이트)  
innodb_dblwr_pages_written/sec doublewrite 버퍼에 쓰여진 페이지 수  
innodb_dblwr_writes/sec 수행된 doublewrite 작업의 수  
innodb_log_waits/sec 리두 로그가 플러시 될 때까지 기다려린 횟 수  
innodb_log_writes/sec 리두 로그 파일에 대한 물리적 쓰기 수  
innodb_log_write_requests/sec 리두 로그에 대한 쓰기 요청 수.  
innodb_os_log_fsyncs/sec 리두 로그 fsync(디스크와 동기화) 요청 수  
innodb_os_log_pending_fsyncs 보류 중인 리두 로그 fsync(디스크와 동기화) 요청 수  
innodb_os_log_pending_writes 보류 중인 리두 로그 쓰기 수  
innodb_os_log_written/sec 리두 로그 파일에 기록된 바이트 수  
innodb_pages_created/sec 테이블 작업으로 생성된 페이지 수  
innodb_pages_read/sec 버퍼 풀에서 읽은 페이지 수  
innodb_pages_written/sec 버퍼 풀에서 디스크로 쓰여진 페이지 수  
innodb_page_size 페이지 크기(기본값 16KB)  
innodb_rows_deleted/sec 테이블에서 삭제된 행의 수  
innodb_rows_inserted/sec 테이블에 삽입된 행의 수  
innodb_rows_read/sec 테이블에서 읽은 행의 수  
innodb_rows_updated/sec 테이블에서 업데이트 된 행의 예상 수  
대기 및 잠금 innodb_row_lock_current_waits 현재 테이블 작업이 기다리고 있는 행 잠금 수  
innodb_row_lock_time/sec 테이블에 대한 행 잠금을 획득하는 데 소요된 총 시간(밀리초)  
innodb_row_lock_waits/sec 테이블 작업이 행 잠금을 기다려야 하는 횟수 초당 잠금을 기다린 횟수
키 캐시 key_blocks_not_flushed - MYISAM 엔진의 키캐시 관련 지표
key_blocks_unused - MYISAM 엔진의 키캐시 관련 지표
key_blocks_used - MYISAM 엔진의 키캐시 관련 지표
key_reads/sec - MYISAM 엔진의 키캐시 관련 지표
key_read_requests/sec - MYISAM 엔진의 키캐시 관련 지표
key_writes/sec - MYISAM 엔진의 키캐시 관련 지표
key_write_requests/sec - MYISAM 엔진의 키캐시 관련 지표
커넥션 max_used_connections 서버가 시작된 이후 동시에 사용 중인 최대 연결 수  
엔진 상태 opened_files/sec 열린 파일 수  
opened_tables/sec 열린 테이블 수  
open_files 현재 열린 파일 수  
open_streams 현재 열린 스트림 수  
open_tables 현재 열린 테이블 수  
쿼리 캐시 qcache_free_blocks - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_free_memory - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_hits/sec - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_inserts/sec - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_lowmem_prunes/sec - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_not_cached/sec - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_queries_in_cache - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
qcache_total_blocks - 쿼리 캐시 지표로 Aurora 3 버전에서는 쿼리 캐시 미 사용
요청량 queries/sec 실행된 쿼리 수 총 실행 쿼리 수
questions/sec 서버에 대한 클라이언트 요청 수 클라이언트의 요청 수
I/O select_full_join/sec 풀 조인 실행 수  
select_full_range_join/sec 풀 범위 조인 실행 수  
select_range/sec 범위 스캔 실행 수  
select_scan/sec 테이블 스캔 실행 수  
복제 slave_open_temp_tables/sec 복제 슬레이브에서 열린 임시 테이블 수  
slave_running 슬레이브 복제가 실행 중인지 여부  
커넥션 slow_launch_threads/sec 느리게 시작된 스레드 수 스레드 생성 과부하, CPU, 메모리 부족 등의 원인으로 스레드 생성이 지연되는 경우 발생
엔진 상태 slow_queries/sec 느린 쿼리 수  
I/O sort_merge_passes/sec 정렬 병합 패스 수 정렬시 데이터 사이즈가 커서 디스크를 사용하여 외부 병합 정렬 알고리즘을 사용하는 경우
sort_range/sec 범위 정렬 실행 수 인덱스를 사용하여 특정 범위 내의 데이터를 정렬하는 작업
sort_rows/sec 정렬된 행 수 정렬해야 하는 행의 수
sort_scan/sec 스캔 정렬 실행 수 전체 테이블 또는 인덱스를 스캔하여 정렬하는 작업
대기 및 잠금 table_locks_immediate/sec 즉시 획득한 테이블 잠금 수 테이블 잠금을 즉시 획득한 수
table_locks_waited/sec 대기한 테이블 잠금 수 테이블 잠금을 위해 대기한 수
커넥션 threads_cached 현재 스레드 캐시에 있는 스레드 수  
threads_connected 현재 활성화된(대기 + 비대기) 클라이언트 연결 수  
threads_created/sec 초당 생성된 새 스레드 수  
threads_running 현재 실행 중인 (비대기) 스레드 수  
엔진 상태 uptime_in_days 서버가 실행 중인 일수  
커넥션 Used_connect_percent 사용된 연결 수의 백분율  

Aurora CloudWatch 지표

분류 명칭 내용 비고 DBMS


커넥션
AbortedClients 제대로 종료되지 않은 클라이언트 연결 수   Aurora MySQL
ActiveTransactions 현재 인스턴스에서 1초마다 실행되고 있는 평균 트랜잭션 수   Aurora MySQL
복제 AuroraBinlogReplicaLag 바이너리 로그 복제 지연 시간 Seconds_Behind_Master Aurora MySQL Primary
엔진상태 AuroraDMLRejectedMasterFull 마스터에서 거절된 DML 요청 수    
복제 AuroraReplicaLagMaximum 최대 복제 지연 시간 Primary인스턴스와 Replica 인스턴스 사이에 발생하는 최대 지연 시간 Aurora MySQL Primary
Aurora PostgreSQL Primary
AuroraReplicaLagMinimum 최소 복제 지연 시간 Primary인스턴스와 Replica 인스턴스 사이에 발생하는 최대 지연 시간 Aurora MySQL Primary
Aurora PostgreSQL Primary
클러스터 스토리지 AuroraVolumeBytesLeftTotal 클러스터 볼륨의 잔여 가용 공간. 클러스터가 128TB 크기 제한에 근접하는지 여부를 감지하고 싶을 때 주로 사용. Aurora MySQL
병렬쿼리 Aurora_pq_request_attempted 시도된 병렬쿼리 요청 수    
Aurora_pq_request_executed 실행된 병렬쿼리 요청 수    
Aurora_pq_request_failed 실패한 병렬쿼리 요청 수    
Aurora_pq_request_in_progress 진행 중인 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_below_min_rows 최소 행 수 이하로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_column_bit 비트 컬럼으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_column_geometry 지오메트리 컬럼으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_column_lob LOB 컬럼으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_column_virtual 가상 컬럼으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_custom_charset 사용자 정의 문자 집합으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_fast_ddl 빠른 DDL로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_few_pages_outside_buffer_pool 버퍼 풀 외부의 페이지 수로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_full_text_index 전체 텍스트 인덱스로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_high_buffer_pool_pct 높은 버퍼 풀 비율로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_index_hint 인덱스 힌트로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_innodb_table_format InnoDB 테이블 형식으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_long_trx 긴 트랜잭션으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_no_where_clause WHERE 절이 없어 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_range_scan 범위 스캔으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_row_length_too_long 행 길이가 너무 길어 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_small_table 작은 테이블로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_temporary_table 임시 테이블로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_tx_isolation 트랜잭션 격리로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_unsupported_access 지원되지 않는 접근으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_not_chosen_update_delete_stmts UPDATE/DELETE 문으로 선택되지 않은 병렬쿼리 요청 수    
Aurora_pq_request_throttled 제한된 병렬쿼리 요청 수    
I/O

BlockedTransactions 1초마다 차단된 평균 트랜잭션 수    
BufferCacheHitRatio 버퍼 캐시 히트 비율    
CommitLatency 커밋 작업을 완료하는데 걸린 평균 시간    
CommitThroughput 초당 커밋 작업의 평균 수    
커넥션 ConnectionAttempts 인스턴스에 연결하려는 시도 횟수    
엔진 상태 CPUUtilization CPU 사용률    
커넥션 DatabaseConnections 인스턴스에 대한 클라이언트 네트워크 연결 수 지표 값에 다음이 포함되지 않기 때문에 데이터베이스 세션 수가 지표 값보다 클 수 있습니다.
  • 더 이상 네트워크에 연결되어 있지 않지만 데이터베이스에 의해 정리되지 않은 세션
  • 데이터베이스 엔진에 의해 자체 용도로 생성된 세션
  • 데이터베이스 엔진의 병렬 실행 기능에 의해 생성된 세션
  • 데이터베이스 엔진 작업 스케줄러에 의해 생성된 세션
  • Amazon Aurora 연결
Aurora MySQL
Aurora PostgreSQL
엔진 상태 DBLoad DB 엔진에 대한 활성 세션 수   Performance insight
DBLoadCPU 대기 이벤트 유형이 'CPU'인 활성 세션 수 데이터베이스가 쿼리 처리를 위해 사용한 CPU 시간 Performance insight
DBLoadNonCPU 대기 이벤트 유형이 'CPU'가 아닌 활성 세션 수 /O 대기 시간, 네트워크 대기 시간 등 CPU 외의 자원으로 인해 발생한 대기 시간 Performance insight
DBLoadRelativeToNumVCPUs 가상 CPU 수에 대한 데이터베이스 로드   Performance insight
I/O DDLLatency DDL 평균 요청 소요 시간   Aurora MySQL
DDLThroughput 초당 DDL 처리량   Aurora MySQL
대기 및 잠금 Deadlocks 초당 발생하는 평균 데드락 수   Aurora MySQL
Aurora PostgreSQL
I/O DeleteLatency 삭제 지연 시간   Aurora MySQL
DeleteThroughput 초당 삭제 처리량   Aurora MySQL
DiskQueueDepth 디스크 큐 깊이 디스크 액세스를 대기 중인 읽기/쓰기 요청 수 Aurora MySQL
Aurora PostgreSQL
DMLLatency DML 지연 시간   Aurora MySQL
DMLThroughput 초당 DML 처리량   Aurora MySQL
  EBSByteBalance% EBS 바이트 균형 백분율 RDS 데이터베이스의 버스트 버킷에 남아 있는 처리량 크레딧의 백분율  
  EBSIOBalance% EBS IO 균형 백분율 RDS 데이터베이스의 버스트 버킷에 남아 있는 I/O 크레딧의 백분율  
서버상태 EngineUptime 엔진 가동 시간   Aurora MySQL
Aurora PostgreSQL
글로벌 데이터베이스의 쓰기 전달
공식문서
ForwardingMasterDMLLatency 마스터로 전달된 DML 지연 시간 보조 클러스터에서 쓰기 전달을 사용할 때 기본 클러스터에 적용 Aurora Global Database
ForwardingMasterDMLThroughput 마스터로 전달된 초당 DML 처리량 보조 클러스터에서 쓰기 전달을 사용할 때 기본 클러스터에 적용 Aurora Global Database
ForwardingMasterOpenSessions 마스터로 전달된 열린 세션 수 보조 클러스터에서 쓰기 전달을 사용할 때 기본 클러스터에 적용 Aurora Global Database
ForwardingReplicaDMLLatency 복제본에 있는 전달된 DML의 평균 응답 시간. 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaDMLThroughput 초당 처리되는 전달된 DML 문 수 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaOpenSessions 리더 DB 인스턴스에서 쓰기 전달을 사용하는 세션 수 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaReadWaitLatency 리리더 DB 인스턴스의 SELECT 명령문이 기본 클러스터를 따라잡기 위해 대기하는 평균 대기 시간. 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaReadWaitThroughput 쓰기를 전달하는 모든 세션에서 초당 처리되는 SELECT문의 총 수. 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaSelectLatency 전달된 SELECT 지연 시간, 모니터링 기간 내에 전달된 모든 SELECT 명령문의 평균 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
ForwardingReplicaSelectThroughput 모니터링 기간 내 전달된 SELECT 초당 평균 처리량 쓰기 전달이 활성화된 보조 클러스터의 각 리더 DB 인스턴스에서 측정 Aurora Global Database
엔진 상태 FreeableMemory 사용 가능한 메모리 (바이트)   Aurora MySQL
Aurora PostgreSQL
FreeLocalStorage 사용 가능한 로컬 스토리지 각 DB 인스턴스에 사용 가능한 스토리지 크기
클래스를 큰 것으로 선택하면 인스턴스의 여유 스토리지 공간을 늘릴 수 있습니다.
Aurora MySQL
Aurora PostgreSQL
I/O InsertLatency INSERT 평균 작업 소요 시간   Aurora MySQL
InsertThroughput 초당 insert 평균 커밋 작업의 수   Aurora MySQL
커넥션 LoginFailures 초당 평균 로그인 실패 횟수   Aurora MySQL
네트워크 NetworkReceiveThroughput 인스턴스 네트워크 수신 처리량   Aurora MySQL
Aurora PostgreSQL
NetworkThroughput 인스턴스 네트워크 처리량   Aurora MySQL
Aurora PostgreSQL
NetworkTransmitThroughput 인스턴스 네트워크 송신 처리량   Aurora MySQL
Aurora PostgreSQL
엔진 상태 NumBinaryLogFiles 바이너리 로그 파일 수   Aurora MySQL
  PurgeBoundary Undo Log에서 현재까지 제거 된(삭제된) 트랜잭션의 경계
데이터베이스의 변경 사항이 실제로 제거되어야 하는 경계를 정의합니다. (개수)
Undo Log를 사용하여 트랜잭션이 발생하기 전의 데이터 상태를 유지합니다.
Undo Log의 정리 작업이 어느 지점까지 진행되었는지를 나타내며, Undo Log의 공간 관리를 위한 기준이 됩니다.
이 값이 커지면 Undo Log의 정리 작업이 더 멀리 진행되었음을 나타냅니다.
Aurora MySQL
  PurgeFinishedPoint Undo Log에서 완료된(더 이상 필요하지 않게 된) 트랜잭션의 경계
Undo Log에서 더 이상 필요하지 않은 데이터를 제거한 지점 (개수)
InnoDB 제거가 수행되는 최대 트랜잭션 수입니다. 이 지표를 사용하면 InnoDB 제거가 얼마나 빠르게 진행되고 있는지 확인할 수 있습니다. Aurora MySQL
엔진 상태 Queries 쿼리 수   Aurora MySQL
I/O ReadIOPS 읽기 IOPS   Aurora MySQL
Aurora PostgreSQL
ReadLatency 디스크 I/O 연산당 평균 처리 시간 (초)   Aurora MySQL
Aurora PostgreSQL
ReadThroughput 초당 디스크에서 읽은 평균 바이트 수   Aurora MySQL
Aurora PostgreSQL
  RelativeDBLoad ?    
엔진 상태 ResultSetCacheHitRatio 결과 집합 캐시 히트 비율 Result 결과를 캐시에서 검색한 비율로 쿼리 캐시와 연관이 있다. Aurora MySQL
I/O RollbackSegmentHistoryListLength 롤백 세그먼트 히스토리 목록 길이   Aurora MySQL
대기 및 잠금 RowLockTime 행 잠금 시간 기간 동안의 LOCK 총 누적 시간 Aurora MySQL
I/O SelectLatency SELECT 작업의 평균 소요 시간.   Aurora MySQL
SelectThroughput 초당 평균 SELECT 쿼리 수   Aurora MySQL
네트워크 StorageNetworkReceiveThroughput 스토리지 네트워크 수신 처리량 인스턴스가 Aurora 스토리지 하위 시스템과 수신하는 네트워크 처리량 Aurora MySQL
Aurora PostgreSQL
StorageNetworkThroughput 스토리지 네트워크 처리량 인스턴스가 Aurora 스토리지 하위 시스템과 송수신하는 네트워크 처리량 Aurora MySQL
Aurora PostgreSQL
StorageNetworkTransmitThroughput 스토리지 네트워크 송신 처리량 인스턴스가 Aurora 스토리지 하위 시스템과 전송하는 네트워크 처리량 Aurora MySQL
Aurora PostgreSQL
엔진 상태 SumBinaryLogSize 바이너리 로그 파일의 총 크기   Aurora MySQL
SwapUsage 스왑 사용량   Aurora MySQL
Aurora PostgreSQL
TruncateFinishedPoint Undo Log Truncate 완료 지점 (개수) Undo Log에서 트랜잭션이 완료되어 더 이상 필요하지 않게 된 시점을 나타내는 지표 Aurora MySQL
I/O UpdateLatency 업데이트 작업의 평균 소요 시간   Aurora MySQL
UpdateThroughput 초당 평균 업데이트 수   Aurora MySQL
WriteIOPS 쓰기 IOPS 초당 생성된 Aurora 스토리지 쓰기 레코드 수입니다. 데이터베이스에 의해 생성된 로그 레코드 수보다 많거나 적습니다. 이는 8K 페이지 쓰기에 해당하지 않으며 전송된 네트워크 패킷에 해당하지 않습니다 Aurora MySQL
Aurora PostgreSQL
WriteLatency 디스크 I/O 쓰기 평균 소요 시간   Aurora MySQL
WriteThroughput 초당 영구 스토리지에 기록된 평균 바이트 수   Aurora MySQL

 

 

 

'공부 > DATABASE' 카테고리의 다른 글

[AWS] OpenSearch Service  (0) 2024.09.15
[PostgreSQL] Aurora PostgreSQL의 Shared Buffer 기본값  (0) 2024.09.15
[REDIS] Redis의 복제와 클러스터  (0) 2024.09.15
[AWS] ElastiCache 란?  (0) 2024.09.15
[AWS] RDS 스냅샷  (0) 2024.09.15