본문 바로가기
DB 인사이드 | PostgreSQL Vacuum - 5. Manual Vacuum 📢 본 문서에서는 ①Vacuum의 목적과 ②Vacuum 동작 Mode에 대해 먼저 알아보도록 하겠습니다. 이후 조금은 특별하게 동작하는 ③Vacuum Freeze의 동작원리를 설명한 후 마지막으로 ④전체적인 Vacuum 수행 프로세스에 대해 알아보도록 하겠습니다. 더불어 지난 문서들을 통해 소개되었던 개념들이 모두 혼용되어 사용되는 만큼, 충분한 이해를 바탕으로 읽기를 추천합니다. Manual Vacuum Vacuum 이란? 진공청소기라는 뜻을 지닌 Vacuum은 PostgreSQL에만 존재하는 특수한 개념입니다. 앞선 문서에서 강조했다시피 MVCC 동작원리에 따른 공간 비효율과 XID Wraparound발생 등 PostgreSQL의 특성에 기인한 부작용을 회피하기 위해 등장했습니다. Vacuum은 명령.. 2022. 4. 29.
DB 인사이드 | PostgreSQL Vacuum - 1. MVCC 📢 Vacuum Series의 첫 시작으로, PostgreSQL의 MVCC모델에 대해 알아보도록 하겠습니다. 본 문서에서는 ①MVCC동작 방식 및 예제를 설명한 후 ②해당 모델로 인해 발생 가능한 문제점들을 알아보도록 하겠습니다. MVCC 동작 방식 MVCC 란? MVCC(Multi Version Concurrency Control)란 “다중 버전 동시성 제어”의 줄임 말로, 과거부터 현재까지의 다양한 버전 데이터들에 대한 관리와 제공이 가능한지를 나타내는 DBMS 필수 기능 중 하나입니다. 즉 시시각각 변하고 있는 데이터 중 사용자가 조회를 시작한 시점의 정확한 데이터를 제공받을 수 있는지를 나타내는 것으로, 그 구현 방법은 각각의 DBMS마다 다르지만 목적만은 모두 동일하다고 할 수 있습니다. Pos.. 2022. 4. 29.