

# 성능 개선 도우미 카운터
<a name="USER_PerfInsights_Counters"></a>

카운터 지표는 Performance Insights 대시보드의 운영 체제 및 데이터베이스 성능 지표 입니다. 이 정보와 데이터베이스 로드를 연관 지으면 성능 문제를 식별하고 분석하는 데 도움이 됩니다. 지표에 통계 함수를 추가해야 지표 값을 가져올 수 있습니다. 예를 들어 `os.memory.active` 지표에 지원되는 함수는 `.avg`, `.min`, `.max`, `.sum`, `.sample_count`입니다.

카운터 지표는 1분에 한 번씩 수집됩니다. OS 지표 수집은 향상된 모니터링을 켰는지, 껐는지에 따라 달라집니다. 향상된 모니터링이 꺼져 있는 경우 OS 지표는 1분마다 한 번씩 수집됩니다. 향상된 모니터링이 켜져 있는 경우 OS 지표는 선택한 기간 동안 수집됩니다. 향상된 모니터링에 대한 자세한 내용은 [향상된 모니터링 설정 및 해제](USER_Monitoring.OS.Enabling.md#USER_Monitoring.OS.Enabling.Procedure) 섹션을 참조하세요.

**Topics**
+ [성능 개선 도우미 운영 체제 카운터](#USER_PerfInsights_Counters.OS)
+ [Amazon RDS for MariaDB 및 MySQL에 대한 성능 개선 도우미 카운터](#USER_PerfInsights_Counters.MySQL)
+ [Amazon RDS for Microsoft SQL Server용 성능 개선 도우미 카운터](#USER_PerfInsights_Counters.SQLServer)
+ [Amazon RDS for Oracle의 성능 개선 도우미 카운터](#USER_PerfInsights_Counters.Oracle)
+ [Amazon RDS for PostgreSQL용 성능 개선 도우미 카운터](#USER_PerfInsights_Counters.PostgreSQL)

## 성능 개선 도우미 운영 체제 카운터
<a name="USER_PerfInsights_Counters.OS"></a>

다음 운영 체제 카운터는 `os`로 접두사가 붙으며, 모든 RDS 엔진(RDS for SQL Server 제외) 에 대한 성능 개선 도우미를 사용할 수 있습니다.

`ListAvailableResourceMetrics` API를 사용하여 DB 인스턴스에 대해 지원되는 카운터 지표 목록을 확인할 수 있습니다. 자세한 내용은 Amazon RDS 성능 개선 도우미 API 참조 안내서의 [ ListAvailableResourceMetrics](https://docs.aws.amazon.com/performance-insights/latest/APIReference/API_ListAvailableResourceMetrics)를 참조하세요.


| 카운터 | 유형 | Unit | 지표 | 설명 | 
| --- | --- | --- | --- | --- | 
| 액티브 | Memory | KB | os.memory.active | 할당된 메모리의 양(KB) | 
| 버퍼 | Memory | KB | os.memory.buffers | 스토리지 디바이스에 쓰기 이전에 I/O 요청을 버퍼링하는 데 사용되는 메모리의 양(KB) | 
| 캐시됨 | Memory | KB | os.memory.cached | 파일 시스템 기반 I/O를 캐시하는 데 사용되는 메모리의 양(킬로바이트 단위)입니다. | 
| DB 캐시 | Memory | 바이트 | os.memory.db.cache |  tmpfs(shmem)를 포함한 데이터베이스 프로세스별 페이지 캐시에 사용되는 메모리의 양(바이트 단위)입니다.  | 
| DB 상주 세트 크기 | Memory | 바이트 | os.memory.db.residentSetSize |  tmpfs(shmem)를 제외한 데이터베이스 프로세스별 익명 및 스왑 캐시에 사용되는 메모리의 양(바이트 단위)입니다.  | 
| DB 스왑 | Memory | 바이트 | os.memory.db.swap |   데이터베이스 프로세스별 스왑에 사용되는 메모리의 양(바이트 단위)입니다.  | 
| 더티 | Memory | KB | os.memory.dirty | 수정되었지만 스토리지의 관련 데이터 블록에 기록되지 않은 RAM의 메모리 페이지 양(KB) | 
| 무료 | Memory | KB | os.memory.free | 할당되지 않은 메모리의 양(KB) | 
| 사용 가능한 방대한 페이지 | Memory | Pages | os.memory.hugePagesFree | 사용 가능한 방대한 페이지 수입니다. 방대한 페이지는 Linux 커널의 기능입니다. | 
| 예약된 방대한 페이지 | Memory | Pages | os.memory.hugePagesRsvd | 커밋된 방대한 페이지의 수 | 
| 방대한 페이지 크기 | Memory | KB | os.memory.hugePagesSize | 각 방대한 페이지 단위의 크기(KB) | 
| 초과된 방대한 페이지 | Memory | Pages | os.memory.hugePagesSurp | 총계 대비 사용 가능한 초과 방대한 페이지 수 | 
| 방대한 페이지 합계 | Memory | Pages | os.memory.hugePagesTotal | 방대한 페이지의 총 수입니다. | 
| 비활성 | Memory | KB | os.memory.inactive | 가장 적게 사용되는 메모리 페이지의 양(KB) | 
| 매핑됨 | Memory | KB | os.memory.mapped | 프로세스 주소 공간 내에 메모리 매핑되는 총 파일 시스템 콘텐츠 양(KB) | 
| 메모리 부족 처리 수 | Memory | 종료 | os.memory.outOfMemoryKillCount |  마지막 수집 간격 동안 발생한 OOM 처리 수입니다.  | 
| 페이지 테이블 | Memory | KB | os.memory.pageTables | 페이지 표에 사용된 메모리의 양(KB) | 
| 슬래브 | Memory | KB | os.memory.slab | 재사용 가능한 커널 데이터 구조의 양(KB) | 
| 합계 | Memory | KB | os.memory.total | 총 메모리 양(KB) | 
| Writeback | Memory | KB | os.memory.writeback | RAM에서 지원 스토리지에 아직 기록 중인 더티 페이지의 양(KB) | 
| 게스트 | CPU 사용률 | 백분율 | os.cpuUtilization.guest | 게스트 프로그램에서 사용 중인 CPU의 비율 | 
| 유휴 | CPU 사용률 | 백분율 | os.cpuUtilization.idle | 유휴 상태인 CPU의 비율 | 
| Irq | CPU 사용률 | 백분율 | os.cpuUtilization.irq | 소프트웨어 인터럽트에서 사용 중인 CPU의 비율 | 
| Nice | CPU 사용률 | 백분율 | os.cpuUtilization.nice | 가장 낮은 우선순위로 실행 중인 프로그램에서 사용 중인 CPU의 비율 | 
| 도용 | CPU 사용률 | 백분율 | os.cpuUtilization.steal | 다른 가상 머신에서 사용 중인 CPU의 비율 | 
| 시스템 | CPU 사용률 | 백분율 | os.cpuUtilization.system | 커널에서 사용 중인 CPU의 비율 | 
| 합계 | CPU 사용률 | 백분율 | os.cpuUtilization.total | 사용 중인 CPU의 총 비율입니다. 이 값에는 nice 값이 포함됩니다. | 
| User | CPU 사용률 | 백분율 | os.cpuUtilization.user | 사용자 프로그램에서 사용 중인 CPU의 비율 | 
| 대기 | CPU 사용률 | 백분율 | os.cpuUtilization.wait | I/O 액세스를 대기 중인 동안 사용되지 않은 CPU의 비율 | 
|  읽기 IO PS  | 디스크 I/O | 초당 요청 |  os.diskIO.<devicename>.readIOsPS  | 초당 읽기 작업 수 | 
|  쓰기 IO PS  | 디스크 I/O | 초당 요청 |  os.diskIO.<devicename>.writeIOsPS  | 초당 쓰기 작업 수 | 
|  평균 대기열 길이 | 디스크 I/O | 요청 |  os.diskIO.<devicename>.avgQueueLen  | I/O 디바이스의 대기열에서 대기 중인 요청 수입니다. | 
|  평균 요청 크기  | 디스크 I/O | 요청 |  os.diskIO.<devicename>.avgReqSz  | I/O 디바이스의 대기열에서 대기 중인 요청 수입니다. | 
|  대기  | 디스크 I/O | 밀리초 |  os.diskIO.<devicename>.await  | 대기열 시간과 서비스 시간을 포함하여 요청에 응답하는 데 필요한 시간(밀리초) | 
|  읽기 IO PS  | 디스크 I/O | 요청 |  os.diskIO.<devicename>.readIOsPS  | 초당 읽기 작업 수 | 
|  읽기 KB  | 디스크 I/O | KB |  os.diskIO.<devicename>.readKb  | 읽은 총 KB 수 | 
|  읽기 KB PS  | 디스크 I/O | 초당 킬로바이트 |  os.diskIO.<devicename>.readKbPS  | 초당 읽은 KB 수 | 
|  Rrqm PS  | 디스크 I/O | 초당 요청 |  os.diskIO.<devicename>.rrqmPS  | 초당 대기 중인 병합 읽기 요청 수 | 
|  TPS  | 디스크 I/O | 초당 트랜잭션 수 |  os.diskIO.<devicename>.tps  | 초당 I/O 트랜잭션 수 | 
|  유틸리티  | 디스크 I/O | 백분율 |  os.diskIO.<devicename>.util  | 요청이 발급된 CPU 시간의 비율 | 
|  쓰기 KB  | 디스크 I/O | KB |  os.diskIO.<devicename>.writeKb  | 기록한 총 KB 수 | 
|  쓰기 KB PS  | 디스크 I/O | 초당 킬로바이트 |  os.diskIO.<devicename>.writeKbPS  | 초당 기록한 KB 수 | 
|  Wrqm PS  | 디스크 I/O | 초당 요청 |  os.diskIO.<devicename>.wrqmPS  | 초당 대기 중인 병합 쓰기 요청 수 | 
| 차단됨 | 작업 | 작업 | os.tasks.blocked | 차단되는 작업 수 | 
| 실행 | 작업 | 작업 | os.tasks.running | 실행 중인 작업 수 | 
| Sleeping | 작업 | 작업 | os.tasks.sleeping | 절전 상태인 작업 수 | 
| Stopped | 작업 | 작업 | os.tasks.stopped | 중단된 작업 수 | 
| 합계 | 작업 | 작업 | os.tasks.total | 총 작업 수 | 
| 좀비 | 작업 | 작업 | os.tasks.zombie | 상위 작업은 활성화되었지만 비활성 상태인 하위 작업 수 | 
| 1개 | 로드 평균(분) | 프로세스 | os.loadAverageMinute.one | 마지막 1분 동안 CPU 시간을 요청한 프로세스 수 | 
| 15 | 로드 평균(분) | 프로세스 | os.loadAverageMinute.fifteen | 마지막 15분 동안 CPU 시간을 요청한 프로세스 수 | 
| 5 | 로드 평균(분) | 프로세스 | os.loadAverageMinute.five | 마지막 5분 동안 CPU 시간을 요청한 프로세스 수 | 
| 캐시됨 | Swap | KB | os.swap.cached | 캐시 메모리로 사용된 스왑 메모리의 양(KB) | 
| 무료 | Swap | KB | os.swap.free | 사용 가능한 스왑 메모리 양(KB)  | 
| 있음 | Swap | KB | os.swap.in | 디스크에서 스왑된 메모리 양(KB) | 
| Out | Swap | KB | os.swap.out | 디스크로 스왑된 총 메모리 양(KB) | 
| 합계 | Swap | KB | os.swap.total |  사용 가능한 총 스왑 메모리의 양(킬로바이트 단위)입니다.  | 
| 최대 파일 | 파일 시스템 | 파일 | os.fileSys.maxFiles | 모든 스토리지 볼륨에서 파일 시스템에 대해 생성할 수 있는 최대 파일 수입니다. | 
| 사용된 파일 | 파일 시스템 | 파일 | os.fileSys.usedFiles | 모든 스토리지 볼륨에서 파일 시스템의 파일 수입니다. | 
| 사용된 파일(%) | 파일 시스템 | 파일 | os.fileSys.usedFilePercent | 모든 스토리지 볼륨에서 사용 가능한 파일의 비율입니다. | 
| 사용 비율 | 파일 시스템 | 백분율 | os.fileSys.usedPercent | 전체 스토리지 볼륨에서 사용 중인 파일 시스템 디스크 공간의 비율입니다. | 
| 사용됨 | 파일 시스템 | KB | os.fileSys.used | 모든 스토리지 볼륨의 파일 시스템에서 파일이 사용하는 디스크 공간의 양(킬로바이트 단위)입니다. | 
| 합계 | 파일 시스템 | KB | os.fileSys.total | 파일 시스템에 사용할 수 있는 전체 디스크 공간(킬로바이트 단위)입니다. | 
| 최대 파일 | 파일 시스템 | 파일 | os.fileSys.<volumeName>.maxFiles | 스토리지 볼륨에 대해 생성될 수 있는 최대 파일 수입니다. | 
| 사용된 파일 | 파일 시스템 | 파일 | os.fileSys.<volumeName>.usedFiles | 스토리지 볼륨의 파일 수입니다. | 
| 사용된 파일(%) | 파일 시스템 | 파일 | os.fileSys.<volumeName>.usedFilePercent | 스토리지 볼륨에서 사용 가능한 파일 중 사용 중인 파일의 비율입니다. | 
| 사용 비율 | 파일 시스템 | 백분율 | os.fileSys.<volumeName>.usedPercent | 사용 중인 스토리지 볼륨 디스크 공간의 비율입니다. | 
| 사용됨 | 파일 시스템 | KB | os.fileSys.<volumeName>.used | 스토리지 볼륨에서 파일이 사용하는 디스크 공간의 양(킬로바이트 단위)입니다. | 
| 합계 | 파일 시스템 | KB | os.fileSys.<volumeName>.total | 스토리지 볼륨에서 사용할 수 있는 총 디스크 공간(킬로바이트 단위)입니다. | 
| Rx | Network | 초당 바이트 | os.network.rx | 초당 수신된 바이트 수 | 
| Tx | Network | 초당 바이트 | os.network.tx | 초당 업로드된 바이트 수 | 
| ACU 사용률 | 일반 | 백분율 | os.general.acuUtilization |  구성된 최대 용량에서 현재 용량의 백분율입니다.  | 
| 최대 구성 ACU | 일반 | ACU | os.general.maxConfiguredAcu |  사용자가 구성한 최대 용량으로, 단위는 Aurora 용량 단위(ACU)입니다.  | 
| 최소 구성 ACU | 일반 | ACU | os.general.minConfiguredAcu |  사용자가 구성한 최소 용량(ACU 단위)입니다.  | 
| Num VCPU | 일반 | vCPU | os.general.numVCPUs | DB 인스턴스의 가상 CPU(vCPU) 수 | 
| 서버리스 데이터베이스 용량 | 일반 | ACU | os.general.serverlessDatabaseCapacity |  인스턴스의 현재 용량(ACU 단위)입니다.  | 

## Amazon RDS for MariaDB 및 MySQL에 대한 성능 개선 도우미 카운터
<a name="USER_PerfInsights_Counters.MySQL"></a>

Amazon RDS for MariaDB 및 MySQL에 대한 성능 개선 도우미에서 다음 데이터베이스 카운터를 사용할 수 있습니다.

**Topics**
+ [RDS for MariaDB 및 RDS for MySQL용 기본 카운터](#USER_PerfInsights_Counters.MySQL.Native)
+ [Amazon RDS for MariaDB 및 MySQL에 대한 기본이 아닌 카운터](#USER_PerfInsights_Counters.MySQL.NonNative)

### RDS for MariaDB 및 RDS for MySQL용 기본 카운터
<a name="USER_PerfInsights_Counters.MySQL.Native"></a>

기본 지표는 Amazon RDS가 아닌 데이터베이스 엔진에 의해 정의됩니다. 이러한 기본 지표에 대한 정의는 MySQL 설명서의 [Server Status Variables](https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html)(8.0의 경우) 및 [Server Status Variables](https://dev.mysql.com/doc/refman/8.4/en/server-status-variables.html)(8.4의 경우)을 참조하세요.


| 카운터 | 유형 | Unit | 측정치 | 
| --- | --- | --- | --- | 
| Com\$1analyze | SQL | 초당 쿼리 수 | db.SQL.Com\$1analyze | 
| Com\$1optimize | SQL | 초당 쿼리 수 | db.SQL.Com\$1optimize | 
| Com\$1select | SQL | 초당 쿼리 수 | db.SQL.Com\$1select | 
| Connections | SQL | MySQL 서버에 대한 분당 연결 시도 횟수(성공 또는 실패) | db.Users.Connections | 
| Innodb\$1rows\$1deleted | SQL | 초당 행 | db.SQL.Innodb\$1rows\$1deleted | 
| Innodb\$1rows\$1inserted | SQL | 초당 행 | db.SQL.Innodb\$1rows\$1inserted | 
| Innodb\$1rows\$1read | SQL | 초당 행 | db.SQL.Innodb\$1rows\$1read | 
| Innodb\$1rows\$1updated | SQL | 초당 행 | db.SQL.Innodb\$1rows\$1updated | 
| Select\$1full\$1join | SQL | 초당 쿼리 수 | db.SQL.Select\$1full\$1join | 
| Select\$1full\$1range\$1join | SQL | 초당 쿼리 수 | db.SQL.Select\$1full\$1range\$1join | 
| Select\$1range | SQL | 초당 쿼리 수 | db.SQL.Select\$1range | 
| Select\$1range\$1check | SQL | 초당 쿼리 수 | db.SQL.Select\$1range\$1check | 
| Select\$1scan | SQL | 초당 쿼리 수 | db.SQL.Select\$1scan | 
| Slow\$1queries | SQL | 초당 쿼리 수 | db.SQL.Slow\$1queries | 
| Sort\$1merge\$1passes | SQL | 초당 쿼리 수 | db.SQL.Sort\$1merge\$1passes | 
| Sort\$1range | SQL | 초당 쿼리 수 | db.SQL.Sort\$1range | 
| Sort\$1rows | SQL | 초당 쿼리 수 | db.SQL.Sort\$1rows | 
| Sort\$1scan | SQL | 초당 쿼리 수 | db.SQL.Sort\$1scan | 
| 질문 | SQL | 초당 쿼리 수 | db.SQL.Questions | 
| Innodb\$1row\$1lock\$1time | 잠금 | 밀리초(평균) | db.Locks.Innodb\$1row\$1lock\$1time | 
| Table\$1locks\$1immediate | 잠금 | 초당 요청 | db.Locks.Table\$1locks\$1immediate | 
| Table\$1locks\$1waited | 잠금 | 초당 요청 | db.Locks.Table\$1locks\$1waited | 
| Aborted\$1clients | Users | Connections | db.Users.Aborted\$1clients | 
| Aborted\$1connects | Users | Connections | db.Users.Aborted\$1connects | 
| max\$1connections | Users | 연결 | db.User.Max\$1Connections | 
| Threads\$1created | Users | Connections | db.Users.Threads\$1created | 
| Threads\$1running | Users | Connections | db.Users.Threads\$1running | 
| Innodb\$1data\$1writes | I/O | 초당 연산 수 | db.IO.Innodb\$1data\$1writes | 
| Innodb\$1dblwr\$1writes | I/O | 초당 연산 수 | db.IO.Innodb\$1dblwr\$1writes | 
| Innodb\$1log\$1write\$1requests | I/O | 초당 연산 수 | db.IO.Innodb\$1log\$1write\$1requests | 
| Innodb\$1log\$1writes | I/O | 초당 연산 수 | db.IO.Innodb\$1log\$1writes | 
| Innodb\$1pages\$1written | I/O | 초당 페이지 | db.IO.Innodb\$1pages\$1written | 
| Created\$1tmp\$1disk\$1tables | Temp | 초당 테이블 | db.Temp.Created\$1tmp\$1disk\$1tables | 
| Created\$1tmp\$1tables | Temp | 초당 테이블 | db.Temp.Created\$1tmp\$1tables | 
| Innodb\$1buffer\$1pool\$1pages\$1data | Cache | 페이지 | db.Cache.Innodb\$1buffer\$1pool\$1pages\$1data | 
| Innodb\$1buffer\$1pool\$1pages\$1total | Cache | 페이지 | db.Cache.Innodb\$1buffer\$1pool\$1pages\$1total | 
| Innodb\$1buffer\$1pool\$1read\$1requests | Cache | 초당 페이지 | db.Cache.Innodb\$1buffer\$1pool\$1read\$1requests | 
| Innodb\$1buffer\$1pool\$1reads | Cache | 초당 페이지 | db.Cache.Innodb\$1buffer\$1pool\$1reads | 
| Opened\$1tables | Cache | 테이블 | db.Cache.Opened\$1tables | 
| Opened\$1table\$1definitions | Cache | 테이블 | db.Cache.Opened\$1table\$1definitions | 
| Qcache\$1hits | Cache | 쿼리 | db.Cache.Qcache\$1hits | 

### Amazon RDS for MariaDB 및 MySQL에 대한 기본이 아닌 카운터
<a name="USER_PerfInsights_Counters.MySQL.NonNative"></a>

기본이 아닌 카운터 지표는 Amazon RDS가 정의하는 카운터입니다. 기본이 아닌 지표는 특정 쿼리를 통해 얻는 지표일 수 있습니다. 기본이 아닌 지표는 파생 지표일 수 있습니다. 이 경우 비율, 적중률 또는 지연 시간에 대한 계산 시 2개 이상의 기본 카운터가 사용됩니다.


| 카운터 | 유형 | Unit | 지표 | 설명 | 정의 | 
| --- | --- | --- | --- | --- | --- | 
| innodb\$1buffer\$1pool\$1hits | Cache | 읽기 | db.Cache.innoDB\$1buffer\$1pool\$1hits | InnoDB가 버퍼 풀에서 충족할 수 있었던 읽기의 수입니다. | innodb\$1buffer\$1pool\$1read\$1requests - innodb\$1buffer\$1pool\$1reads | 
| innodb\$1buffer\$1pool\$1hit\$1rate | Cache | 백분율 | db.Cache.innoDB\$1buffer\$1pool\$1hit\$1rate | InnoDB가 버퍼 풀에서 InnoDB가 충족할 수 있었던 읽기의 비율입니다. | 100 \$1 innodb\$1buffer\$1pool\$1read\$1requests / (innodb\$1buffer\$1pool\$1read\$1requests \$1 innodb\$1buffer\$1pool\$1reads) | 
| innodb\$1buffer\$1pool\$1usage | Cache | 백분율 | db.Cache.innoDB\$1buffer\$1pool\$1usage |  데이터(페이지)를 포함하는 InnoDB 버퍼 풀의 비율입니다.  압축된 테입블을 사용하는 경우 이 값은 달라질 수 있습니다. 자세한 내용은 MySQL 설명서의 [Server Status Variables](https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html)(8.0의 경우) 및 [Server Status Variables](https://dev.mysql.com/doc/refman/8.4/en/server-status-variables.html)(8.4의 경우)에서 `Innodb_buffer_pool_pages_data` 및 `Innodb_buffer_pool_pages_total`에 대한 정보를 참조하세요.   | Innodb\$1buffer\$1pool\$1pages\$1data / Innodb\$1buffer\$1pool\$1pages\$1total \$1 100.0 | 
| query\$1cache\$1hit\$1rate | Cache | 백분율 | db.Cache.query\$1cache\$1hit\$1rate | MySQL 결과 집합 캐시(쿼리 캐시) 적중률입니다. | Qcache\$1hits / (QCache\$1hits \$1 Com\$1select) \$1 100 | 
| innodb\$1datafile\$1writes\$1to\$1disk | I/O | 쓰기 | db.IO.innoDB\$1datafile\$1writes\$1to\$1disk | 디스크에 대한 InnoDB 데이터 파일 쓰기의 수(이중 쓰기 및 재실행 로깅 쓰기 연산은 제외)입니다. | Innodb\$1data\$1writes - Innodb\$1log\$1writes - Innodb\$1dblwr\$1writes | 
| innodb\$1rows\$1changed | SQL | 행 | db.SQL.innodb\$1rows\$1changed | 총 InnoDB 행 연산입니다. | db.SQL.Innodb\$1rows\$1inserted \$1 db.SQL.Innodb\$1rows\$1deleted \$1 db.SQL.Innodb\$1rows\$1updated | 
| active\$1transactions | 트랜잭션 | 트랜잭션 | db.Transactions.active\$1transactions | 총 활성 트랜잭션입니다. | SELECT COUNT(1) AS active\$1transactions FROM INFORMATION\$1SCHEMA.INNODB\$1TRX | 
| trx\$1rseg\$1history\$1len | 트랜잭션 | 없음 | db.Transactions.trx\$1rseg\$1history\$1len | 다중 버전 동시성 제어를 구현하기 위해 InnoDB 트랜잭션 시스템에서 유지 관리하는 커밋된 트랜잭션의 실행 취소 로그 페이지 목록입니다. 로그 레코드 실행 취소 세부 정보에 대한 자세한 내용은 MySQL 설명서의 [InnoDB Multi-Versioning](https://dev.mysql.com/doc/refman/8.0/en/innodb-multi-versioning.html)(8.0의 경우) 및 [InnoDB Multi-Versioning](https://dev.mysql.com/doc/refman/8.4/en/innodb-multi-versioning.html)(8.4의 경우)을 참조하세요. | SELECT COUNT AS trx\$1rseg\$1history\$1len FROM INFORMATION\$1SCHEMA.INNODB\$1METRICS WHERE NAME='trx\$1rseg\$1history\$1len'  | 
| innodb\$1deadlocks | 잠금 | 잠금 | db.Locks.innodb\$1deadlocks | 교착 상태의 총 개수입니다. | SELECT COUNT AS innodb\$1deadlocks FROM INFORMATION\$1SCHEMA.INNODB\$1METRICS WHERE NAME='lock\$1deadlocks' | 
| innodb\$1lock\$1timeouts | 잠금 | 잠금 | db.Locks.innodb\$1lock\$1timeouts | 시간을 초과한 총 잠금 수입니다. | SELECT COUNT AS innodb\$1lock\$1timeouts FROM INFORMATION\$1SCHEMA.INNODB\$1METRICS WHERE NAME='lock\$1timeouts' | 
| innodb\$1row\$1lock\$1waits | 잠금 | 잠금 | db.Locks.innodb\$1row\$1lock\$1waits | 대기의 원인이 된 행 잠금의 총 개수입니다. | SELECT COUNT AS innodb\$1row\$1lock\$1waits FROM INFORMATION\$1SCHEMA.INNODB\$1METRICS WHERE NAME='lock\$1row\$1lock\$1waits' | 

## Amazon RDS for Microsoft SQL Server용 성능 개선 도우미 카운터
<a name="USER_PerfInsights_Counters.SQLServer"></a>

RDS for Microsoft SQL Server용 성능 개선 도우미에서는 다음 데이터베이스 카운터를 사용할 수 있습니다.

### RDS for Microsoft SQL Server용 기본 카운터
<a name="USER_PerfInsights_Counters.SQLServer.Native"></a>

기본 지표는 Amazon RDS가 아닌 데이터베이스 엔진에 의해 정의됩니다. Microsoft SQL Server 설명서의 [Use SQL Server Objects](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/use-sql-server-objects?view=sql-server-2017)에서 이 기본 지표의 정의를 볼 수 있습니다.


| 카운터 | 유형 | Unit | 측정치 | 
| --- | --- | --- | --- | 
| 전달된 레코드 | [액세스 메서드](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-access-methods-object?view=sql-server-2017) | 초당 레코드 수 | db.Access Methods.Forwarded Records | 
| 페이지 분할 | [액세스 메서드](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-access-methods-object?view=sql-server-2017) | 초당 분할 수 | db.Access Methods.Page Splits | 
| Buffer 캐시 적중률 | [버퍼 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-buffer-manager-object?view=sql-server-2017) | 비율 | db.Buffer Manager.Buffer cache hit ratio | 
| 페이지 예상 수명 | [버퍼 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-buffer-manager-object?view=sql-server-2017) | 초 단위 예상 수명 | db.Buffer Manager.Page life expectancy | 
| 페이지 조회 | [버퍼 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-buffer-manager-object?view=sql-server-2017) | 초당 조회 수 | db.Buffer Manager.Page lookups | 
| 페이지 읽기 수 | [버퍼 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-buffer-manager-object?view=sql-server-2017) | 초당 읽기 수 | db.Buffer Manager.Page reads | 
| 페이지 쓰기 수 | [버퍼 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-buffer-manager-object?view=sql-server-2017) | 초당 쓰기 수 | db.Buffer Manager.Page writes | 
| 활성 트랜잭션 | [데이터베이스](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-databases-object?view=sql-server-2017) | 트랜잭션 | db.Databases.Active Transactions (\$1Total) | 
| 플러시된 로그 바이트 수 | [ 데이터베이스](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-databases-object?view=sql-server-2017)  | 초당 플러시된 바이트 수 | db.Databases.Log Bytes Flushed (\$1Total) | 
| 로그 플러시 대기 시간 | [ 데이터베이스](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-databases-object?view=sql-server-2017)  | 초당 대기 시간 | db.Databases.Log Flush Waits (\$1Total) | 
| 로그 플러시 | [ 데이터베이스](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-databases-object?view=sql-server-2017)  | 초당 플러시 수 | db.Databases.Log Flushes (\$1Total) | 
| 쓰기 트랜잭션 | [ 데이터베이스](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-databases-object?view=sql-server-2017)  | 초당 트랜잭션 수 | db.Databases.Write Transactions (\$1Total) | 
| 차단된 프로세스 | [일반 통계](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-general-statistics-object?view=sql-server-2017) | 차단된 프로세스 | db.General Statistics.Processes blocked | 
| 사용자 연결 | [일반 통계](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-general-statistics-object?view=sql-server-2017) | Connections | db.General Statistics.User Connections | 
| 래치 대기 시간 | [래치](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-latches-object?view=sql-server-2017) | 초당 대기 시간 | db.Latches.Latch Waits | 
| 교착 상태의 수 | [잠금](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-locks-object?view=sql-server-2017) | 초당 교착 상태의 수 | db.Locks.Number of Deadlocks (\$1Total) | 
| 보류 중인 메모리 부여 | [메모리 관리자](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-memory-manager-object?view=sql-server-2017) | 메모리 부여 | db.Memory Manager.Memory Grants Pending | 
| 배치 요청 | [SQL 통계](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-sql-statistics-object?view=sql-server-2017) | 초당 요청 | db.SQL Statistics.Batch Requests | 
| SQL 컴파일 | [SQL 통계](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-sql-statistics-object?view=sql-server-2017) | 초당 컴파일 수 | db.SQL Statistics.SQL Compilations | 
| SQL 재컴파일 수 | [SQL 통계](https://docs.microsoft.com/en-us/sql/relational-databases/performance-monitor/sql-server-sql-statistics-object?view=sql-server-2017) | 초당 재컴파일 수 | db.SQL Statistics.SQL Re-Compilations | 

## Amazon RDS for Oracle의 성능 개선 도우미 카운터
<a name="USER_PerfInsights_Counters.Oracle"></a>

RDS for Oracle용 성능 개선 도우미에서는 다음 데이터베이스 카운터를 사용할 수 있습니다.

### RDS for Oracle용 기본 카운터
<a name="USER_PerfInsights_Counters.Oracle.Native"></a>

기본 지표는 Amazon RDS가 아닌 데이터베이스 엔진에 의해 정의됩니다. Oracle 설명서의 [통계 설명](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/refrn/statistics-descriptions-2.html#GUID-2FBC1B7E-9123-41DD-8178-96176260A639)에서 이러한 기본 지표에 대한 정의를 확인하실 수 있습니다.

**참고**  
`CPU used by this session` 카운터 지표의 경우 단위가 기본 100분의 1초에서 활성 세션으로 변환되어 값을 사용하기가 더 쉬워졌습니다. 예를 들어 DB 로드 차트의 CPU 전송은 CPU에 대한 수요를 나타냅니다. 카운터 지표 `CPU used by this session`은 Oracle 세션의 CPU 사용량을 나타냅니다. CPU 전송을 `CPU used by this session` 카운터 지표와 비교할 수 있습니다. CPU에 대한 수요가 사용된 CPU보다 높은 경우 세션은 CPU 시간을 기다리고 있습니다.


| 카운터 | 유형 | Unit | 측정치 | 
| --- | --- | --- | --- | 
| 이 세션에서 사용한 CPU | User | 활성 세션 | 이 세션에서 사용한 db.User.CPU | 
| 클라이언트에게로 또는 클라이언트로의 SQL\$1Net 왕복 | User | 초당 왕복 | 클라이언트에게로 또는 클라이언트로의 db.User.SQL\$1Net 왕복 | 
| 클라이언트에게서 SQL\$1Net을 통해 수신한 바이트 수 | User | 초당 바이트 | 클라이언트에게서 SQL\$1Net을 통해 수신한 db.User.bytes | 
| 사용자 커밋 | User | 초당 커밋 수 | db.User.bytes 커밋 | 
| 누적 로그온 수 | User | 초당 로그온 수 | 누적 db.User.logons | 
| 사용자 호출 | User | 초당 호출 수 | db.User.bytes 호출 | 
| SQL\$1Net을 통해 클라이언트에게 전송된 바이트 | User | 초당 바이트 | SQL\$1Net을 통해 클라이언트에게 전송된 db.User.bytes | 
| 사용자 롤백 | User | 초당 롤백 수 | db.User.user 롤백 | 
| 재실행 크기 | Redo | 초당 바이트 | db.Redo.redo 크기 | 
| 구문 분석 개수(합계) | SQL | 초당 구문 분석 수 | db.SQL.parse 개수(합계) | 
| 구문 분석 개수(하드) | SQL | 초당 구문 분석 수 | db.SQL.parse 개수(하드) | 
| 획득한 테이블 스캔 행 | SQL | 초당 행 | 획득한 db.SQL.table 스캔 행 | 
| 정렬(메모리) | SQL | 초당 정렬 | db.SQL.sorts(메모리) | 
| 정렬(디스크) | SQL | 초당 정렬 | db.SQL.sorts(디스크) | 
| 정렬(행) | SQL | 초당 정렬 | db.SQL.sorts(행) | 
| 물리적 읽기 바이트 수 | Cache | 초당 바이트 | db.Cache.physical 읽기 바이트 수 | 
| DB 블록 GET | Cache | 초당 블록 수 | db.Cache.db 블록 GET | 
| DBWR 체크포인트 | Cache | 분당 체크포인트 | db.Cache.DBWR 체크포인트 | 
| 물리적 읽기 수 | Cache | 초당 읽기 수 | db.Cache.physical 읽기 | 
| 캐시에서 일관된 GET | Cache | 초당 GET의 수 | 캐시에서 db.Cache.consistent GET | 
| 캐시의 DB 블록 GET | Cache | 초당 GET의 수 | 캐시의 db.Cache.db 블록 GET | 
| 일관된 GET | Cache | 초당 GET의 수 | db.Cache.consistent GET | 

## Amazon RDS for PostgreSQL용 성능 개선 도우미 카운터
<a name="USER_PerfInsights_Counters.PostgreSQL"></a>

Amazon RDS for PostgreSQL용 성능 개선 도우미에서는 다음 데이터베이스 카운터를 사용할 수 있습니다.

**Topics**
+ [Amazon RDS for PostgreSQL용 기본 카운터](#USER_PerfInsights_Counters.PostgreSQL.Native)
+ [Amazon RDS for PostgreSQL용 비-기본 카운터](#USER_PerfInsights_Counters.PostgreSQL.NonNative)

### Amazon RDS for PostgreSQL용 기본 카운터
<a name="USER_PerfInsights_Counters.PostgreSQL.Native"></a>

기본 지표는 Amazon RDS가 아닌 데이터베이스 엔진에 의해 정의됩니다. PostgreSQL 설명서의 [통계 보기](https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-STATS-VIEWS)에서 이러한 기본 지표에 대한 정의를 확인하실 수 있습니다.


| 카운터 | 유형 | Unit | 측정치 | 
| --- | --- | --- | --- | 
| blks\$1hit | Cache | 초당 블록 수 | db.Cache.blks\$1hit | 
| buffers\$1alloc | Cache | 초당 블록 수 | db.Cache.buffers\$1alloc | 
| buffers\$1checkpoint | 체크포인트 | 초당 블록 수 | db.Checkpoint.buffers\$1checkpoint | 
| checkpoint\$1sync\$1time | 체크포인트 | 체크포인트당 밀리초 | db.Checkpoint.checkpoint\$1sync\$1time | 
| checkpoint\$1write\$1time | 체크포인트 | 체크포인트당 밀리초 | db.Checkpoint.checkpoint\$1write\$1time | 
| checkpoints\$1req | 체크포인트 | 분당 체크포인트 | db.Checkpoint.checkpoints\$1req | 
| checkpoints\$1timed | 체크포인트 | 분당 체크포인트 | db.Checkpoint.checkpoints\$1timed | 
| maxwritten\$1clean | 체크포인트 | 분당 Bgwriter 클린 스톱  | db.Checkpoint.maxwritten\$1clean | 
| deadlocks | 동시성 | 분당 교착 상태의 수 | db.Concurrency.deadlocks | 
| blk\$1read\$1time | I/O | 밀리초 | db.IO.blk\$1read\$1time | 
| blks\$1read | I/O | 초당 블록 수 | db.IO.blks\$1read | 
| buffers\$1backend | I/O | 초당 블록 수 | db.IO.buffers\$1backend | 
| buffers\$1backend\$1fsync | I/O | 초당 블록 수 | db.IO.buffers\$1backend\$1fsync | 
| buffers\$1clean | I/O | 초당 블록 수 | db.IO.buffers\$1clean | 
| tup\$1deleted | SQL | 초당 튜플 수 | db.SQL.tup\$1deleted | 
| tup\$1fetched | SQL | 초당 튜플 수 | db.SQL.tup\$1fetched | 
| tup\$1inserted | SQL | 초당 튜플 수 | db.SQL.tup\$1inserted | 
| tup\$1returned | SQL | 초당 튜플 수 | db.SQL.tup\$1returned | 
| tup\$1updated | SQL | 초당 튜플 수 | db.SQL.tup\$1updated | 
| temp\$1bytes | Temp | 초당 바이트 | db.Temp.temp\$1bytes | 
| temp\$1files | Temp | 분당 파일 수 | db.Temp.temp\$1files | 
| xact\$1commit | 트랜잭션 | 초당 커밋 수 | db.Transactions.xact\$1commit | 
| xact\$1rollback | 트랜잭션 | 초당 롤백 수 | db.Transactions.xact\$1rollback | 
| numbackends | User | Connections | db.User.numbackends | 
| archived\$1count | Write Ahead Log(WAL) | 분당 파일 수 | db.WAL.archived\$1count | 

### Amazon RDS for PostgreSQL용 비-기본 카운터
<a name="USER_PerfInsights_Counters.PostgreSQL.NonNative"></a>

기본이 아닌 카운터 지표는 Amazon RDS가 정의하는 카운터입니다. 기본이 아닌 지표는 특정 쿼리를 통해 얻는 지표일 수 있습니다. 기본이 아닌 지표는 파생 지표일 수 있습니다. 이 경우 비율, 적중률 또는 지연 시간에 대한 계산 시 2개 이상의 기본 카운터가 사용됩니다.


| 카운터 | 유형 | Unit | 지표 | 설명 | 정의 | 
| --- | --- | --- | --- | --- | --- | 
| checkpoint\$1sync\$1latency | 체크포인트 | db.Checkpoint.checkpoint\$1sync\$1latency |  | 파일이 디스크에 동기화되는 체크포인트 처리 중 일부에서 소요된 총 시간입니다. | checkpoint\$1sync\$1time / (checkpoints\$1timed \$1 checkpoints\$1req) | 
| checkpoint\$1write\$1latency | 체크포인트 | db.Checkpoint.checkpoint\$1write\$1latency | 파일이 디스크에 쓰이는 체크포인트 처리 중 일부에서 소요된 총 시간입니다. | checkpoint\$1write\$1time / (checkpoints\$1timed \$1 checkpoints\$1req) | 
| read\$1latency | I/O | db.IO.read\$1latency | 이 인스턴스의 백엔드에서 데이터 파일 블록을 읽는 데 소요된 시간입니다. | blk\$1read\$1time / blks\$1read | 
| idle\$1in\$1transaction\$1aborted\$1count | 상태 | 세션 | db.state.idle\$1in\$1transaction\$1aborted\$1count | idle in transaction (aborted) 상태의 세션 수 | 해당 사항 없음 | 
| idle\$1in\$1transaction\$1count | 상태 | 세션 | db.state.idle\$1in\$1transaction\$1count | idle in transaction 상태의 세션 수 | 해당 사항 없음 | 
| idle\$1in\$1transaction\$1max\$1time | State | 초 | db.state.idle\$1in\$1transaction\$1max\$1time | idle in transaction 상태에서 가장 오래 실행되는 트랜잭션의 지속 시간(초) | 해당 사항 없음 | 
| active\$1transactions | 트랜잭션 | 트랜잭션 | db.Transactions.active\$1transactions | 활성 트랜잭션의 수 | 해당 사항 없음 | 
| blocked\$1transactions | 트랜잭션 | 트랜잭션 | db.Transactions.blocked\$1transactions | 차단된 트랜잭션의 수 | 해당 사항 없음 | 
| oldest\$1active\$1logical\$1replication\$1slot\$1xid\$1age | 트랜잭션 | db.Transactions.oldest\$1active\$1logical\$1replication\$1slot\$1xid\$1age | 활성 논리 복제 슬롯에서 가장 오래된 트랜잭션의 기간입니다. 자세한 내용은 [논리적 복제 슬롯](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Logical_replication_slot) 섹션을 참조하세요. | – | 
| oldest\$1inactive\$1logical\$1replication\$1slot\$1xid\$1age | 트랜잭션 | db.Transactions.oldest\$1inactive\$1logical\$1replication\$1slot\$1xid\$1age | 비활성 논리 복제 슬롯에서 가장 오래된 트랜잭션의 기간입니다. 자세한 내용은 [논리적 복제 슬롯](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Logical_replication_slot) 섹션을 참조하세요. | – | 
| oldest\$1prepared\$1transaction\$1xid\$1age | 트랜잭션 | db.Transactions.oldest\$1prepared\$1transaction\$1xid\$1age | 가장 오래된 준비된 트랜잭션의 기간입니다. 자세한 내용은 [준비된 트랜잭션](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Prepared_transaction) 섹션을 참조하세요. | – | 
| oldest\$1running\$1transaction\$1xid\$1age | 트랜잭션 | db.Transactions.oldest\$1running\$1transaction\$1xid\$1age | 실행 중인 트랜잭션 중 가장 오래된 트랜잭션의 기간입니다. 자세한 내용은 가장 오랫동안 실행 중인 활성 트랜잭션의 경우 [활성 문](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Active_statement)를, 가장 오래 실행 중인 유휴 트랜잭션의 경우 [트랜잭션의 유휴 상태](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Idle_in_transaction)을 참조하세요. | – | 
| oldest\$1hot\$1standby\$1feedback\$1xid\$1age | 트랜잭션 | db.Transactions.oldest\$1hot\$1standby\$1feedback\$1xid\$1age | `hot_standby_feedback`이 활성화된 읽기 전용 복제본에서 가장 오랫동안 실행 중인 트랜잭션의 연령입니다. 자세한 내용은 [읽기 전용 복제본](Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Resolving_Identifiableblockers.md#Appendix.PostgreSQL.CommonDBATasks.Autovacuum_Monitoring.Read_replicas) 섹션을 참조하세요. | – | 
| max\$1used\$1xact\$1ids | 트랜잭션 | 트랜잭션 | db.Transactions.max\$1used\$1xact\$1ids | vacuum되지 않은 트랜잭션의 수 | 해당 사항 없음 | 
| max\$1connections | Users | 연결 | db.User.Max\$1Connections | max\$1connections 파라미터에 구성된 DB 인스턴스에 허용되는 최대 연결 수 | 해당 사항 없음 | 
| archive\$1failed\$1count | WAL | 분당 파일 수 | db.WAL.archive\$1failed\$1count | WAL 파일 보관 실패 횟수(분당 파일 수) | 해당 사항 없음 | 