Vacuum

[PostgreSQL 9.6] Visibility Map 내의 FROZEN 비트를 이용한 Vacuum 성능 향상에 대한 고찰

이전 포스팅: [PostgreSQL] 아무도 자세히 알려주지 않았던 Autovacuum의 위험성

1. Vacuum 성능 향상을 위해 9.6에 추가된 기능


이 포스팅은 이전 포스팅과 연결된 내용이므로, 이전 포스팅을 읽고 오시는 것이 좋습니다. 이번 시간에는 9.6의 향상된 Vacuum 성능에 대해서 설명합니다. 9.6은 Visibility Map 내의 Frozen Bit를 이용해서 Vacuum 대상 페이지를 선별하는 알고리즘을 적용했습니다. 즉, 해당 페이지가 ‘frozen 상태’라면 베큠 대상에서 제외한다는 것입니다. 아이디어는 간단하지만 그 효과는 매우 뛰어납니다. (그림-1~그림-3 참조)

(more…)