본문으로 건너뛰기
vacuum_cost_page_hit

vacuum_cost_page_hit

버전기본값context타입
14oneuserinteger
15oneuserinteger
16oneuserinteger
17oneuserinteger
181userinteger
191userinteger

cost 기반 vacuum delay 체계에서, vacuum이 shared buffer 캐시에 이미 있는 buffer를 처리할 때 부과하는 추정 비용이다. 기본값은 1이다.

buffer pool을 잠그고, 공유 hash table을 조회하고, 페이지 내용을 훑는 비용을 나타낸다. 디스크 I/O가 없는 가장 싼 경로이므로 세 가지 page 비용 중 최솟값이며, 다른 두 비용의 기준점 역할을 한다. 디스크에서 읽어야 하는 경우는 vacuum_cost_page_miss(기본 2), 깨끗한 블록을 dirty로 만드는 경우는 vacuum_cost_page_dirty(기본 20)로 각각 더 비싸게 계산된다.

vacuum이 페이지를 처리하며 누적한 이 비용들의 합이 vacuum_cost_limit에 도달하면 프로세스는 vacuum_cost_delay만큼 잠들었다가 재개한다. 이 값 자체를 바꾸는 일은 거의 없고, vacuum 처리량 조절은 vacuum_cost_limit과 delay 쪽에서 하는 것이 일반적이다.

출처: PostgreSQL 18 문서