본문 바로가기
DB 인사이드 | PostgreSQL Vacuum - Monitoring : XMIN’s Horizon Vacuum Series를 통한 Vacuum 동작원리에 이어 이번에는 Monitoring 시 주의해야 할 사항에 대해 이야기해 보도록 하겠습니다. PostgreSQL에 익숙하지 않은 사용자의 경우 Vacuum의 중요성만 인지할 뿐, 단순히 Autovacuum을 Enable 시키거나 Job(Cron)을 통한 Manual Vacuum을 수행하는 것으로 필요한 처방을 다 했다고 생각하곤 합니다. 하지만, MVCC 모델에서 파생된 복잡/다양한 메커니즘은 비단 [Auto]vacuum Operation뿐만 아니라 일반적인 Database 운영 과정까지 지대한 영향을 끼칩니다. 본 문서에서는 그중 idle in transaction상태의 Session이 Vacuum Operation과 맞물렸을 때 발생하는 상황에 대.. 2023. 1. 19.
DB 인사이드 | PostgreSQL Vacuum - 1. MVCC 📢 Vacuum Series의 첫 시작으로, PostgreSQL의 MVCC모델에 대해 알아보도록 하겠습니다. 본 문서에서는 ①MVCC동작 방식 및 예제를 설명한 후 ②해당 모델로 인해 발생 가능한 문제점들을 알아보도록 하겠습니다. MVCC 동작 방식 MVCC 란? MVCC(Multi Version Concurrency Control)란 “다중 버전 동시성 제어”의 줄임 말로, 과거부터 현재까지의 다양한 버전 데이터들에 대한 관리와 제공이 가능한지를 나타내는 DBMS 필수 기능 중 하나입니다. 즉 시시각각 변하고 있는 데이터 중 사용자가 조회를 시작한 시점의 정확한 데이터를 제공받을 수 있는지를 나타내는 것으로, 그 구현 방법은 각각의 DBMS마다 다르지만 목적만은 모두 동일하다고 할 수 있습니다. Pos.. 2022. 4. 29.