[Aurora PostgreSQL] 성능 개선 도우미(PI), pg_stat_statements 지표

2025. 10. 8. 19:02·공부/DATABASE

PI는 pg_stat_statements 지표를 사용하여 운영 모니터링에 사용되는데 해당 지표들은 다음과 같은 내용의 통계를 보여준다.

 

Rows /call : 호출당 Row 수

Avg Latency/call : 호출당 처리 시간

Blk hit/call :  호출당 공유 버퍼에서 읽은 블록 수

Bli reads/call : 호출당 디스크에서 읽은 불록 수

Read time/call : 호출당 디스크에서 읽은 시간

 

Shared Blocks (공유 블록)

  • 대상: 일반 테이블, 인덱스, 시스템 카탈로그
  • 특징: 모든 백엔드 프로세스가 공유하는 shared_buffers에 저장
  • 용도: 영구 데이터, 여러 세션이 동시 접근 가능

 

Local Blocks (로컬 블록)

  • 대상: 임시 테이블, 임시 인덱스, 정렬/해시 작업용 임시 파일 (명시적으로 사용한 temp 테이블)
  • 특징: 각 세션별 전용 버퍼(temp_buffers)에 저장
  • 용도: 세션 전용 데이터, 다른 세션에서 접근 불가

 

Temps Blocks (임시 블록)

대상 : 정렬, 집계, 해시 등의 작업으로 인해 사용되는 임시 테이블 공간

Temp_blk_hit : 메모리 부족으로 인하여 쿼리에서 사용되는 임시 테이블 캐시 히트 수 

Temp_blk_reads : 메모리 부족으로 인하여 쿼리에서 사용되는 임시 테이블 읽기 수

 

PostgreSQL 아키텍처:

┌─────────────────────────────────────────────────┐
│ SHARED MEMORY (공유 메모리)                     │
│ ┌─────────────────────────────────────────────┐ │
│ │ shared_buffers                              │ │ ← Shared Blocks 저장
│ │ - 일반 테이블, 인덱스                       │ │
│ │ - 모든 백엔드가 공유                        │ │
│ └─────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────┘

┌─────────────────────────────────────────────────┐
│ LOCAL MEMORY (백엔드별 메모리)                  │
│ ┌─────────────────────────────────────────────┐ │
│ │ temp_buffers                                │ │ ← Local Blocks 저장 ⭐
│ │ - CREATE TEMP TABLE 전용                   │ │   (명시적 임시테이블)
│ └─────────────────────────────────────────────┘ │
│ ┌─────────────────────────────────────────────┐ │
│ │ work_mem                                    │ │ ← Temp Blocks 저장 ⭐
│ │ - 정렬/해시/집계 작업                       │ │   (work_mem 오버플로우)
│ │ - 초과시 임시파일 생성                      │ │
│ └─────────────────────────────────────────────┘ │
│ ┌─────────────────────────────────────────────┐ │
│ │ maintenance_work_mem                        │ │
│ │ - VACUUM, CREATE INDEX 등                  │ │
│ └─────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────┘

 

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

[ElastiCache] Auth 와 TLS  (0) 2025.11.22
[Aurora Postgresql] VACUUM 정리  (0) 2025.10.08
[Aurora PostgreSQL] 입력 지연 장애 복기  (0) 2025.10.08
[Aurora, Elasticache] 대역폭 관련  (0) 2025.10.08
[Aurora PostgreSQL] Toast 테이블과 VACUUM  (0) 2025.10.08
'공부/DATABASE' 카테고리의 다른 글
  • [ElastiCache] Auth 와 TLS
  • [Aurora Postgresql] VACUUM 정리
  • [Aurora PostgreSQL] 입력 지연 장애 복기
  • [Aurora, Elasticache] 대역폭 관련
무는빼주세요
무는빼주세요
내 머리를 믿지 말자
  • 무는빼주세요
    공부, 기록
    무는빼주세요
  • 전체
    오늘
    어제
  • 링크

    • 링크드인 (LinkedIn)
    • 분류 전체보기 (259) N
      • 일상 (0)
      • 코딩 (77)
      • 공부 (181) N
        • DATABASE (129) N
        • 도커,쿠버네티스 (1)
        • 소소한 개발 (38)
        • 클라우드 영역 (1)
        • CS 영역 (11)
      • 포럼 (0)
  • 최근 글

  • 인기 글

  • hELLO· Designed By정상우.v4.10.5
무는빼주세요
[Aurora PostgreSQL] 성능 개선 도우미(PI), pg_stat_statements 지표
상단으로

티스토리툴바