<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Postgresql Vacuum on YuuuuuuYu</title><link>https://4d4cat.com/tags/postgresql-vacuum/</link><description>Recent content in Postgresql Vacuum on YuuuuuuYu</description><generator>Hugo -- 0.147.2</generator><language>ko-KR</language><lastBuildDate>Tue, 26 Aug 2025 16:33:46 +0900</lastBuildDate><atom:link href="https://4d4cat.com/tags/postgresql-vacuum/index.xml" rel="self" type="application/rss+xml"/><item><title>PostgreSQL Vacuum and Cycle</title><link>https://4d4cat.com/posts/2023/postgresql-vacuum-and-cycle/</link><pubDate>Tue, 19 Dec 2023 17:56:00 +0900</pubDate><guid>https://4d4cat.com/posts/2023/postgresql-vacuum-and-cycle/</guid><description>&lt;blockquote>
&lt;p>** 아래 내용은 GPT4 기반으로 정리했습니다. **&lt;/p>&lt;/blockquote>
&lt;h2 id="vacuum의-목적">VACUUM의 목적&lt;/h2>
&lt;ol>
&lt;li>
&lt;p>저장 공간 회수: &lt;br>
PostgreSQL은 MVCC (Multiversion Concurrency Control, 다중 버전 동시성 제어)라는 저장 시스템을 사용합니다.
이 시스템은 행이 업데이트되거나 삭제될 때마다 새로운 버전의 행을 생성합니다. 이로 인해 오래된 행 버전들이 시간이 지나며 쌓이게 됩니다.
VACUUM은 이러한 오래되고 불필요한 행 버전을 정리하고 공간을 확보합니다.&lt;/p>
&lt;/li>
&lt;li>
&lt;p>트랜잭션 ID Wraparound 방지: &lt;br>
PostgreSQL은 트랜잭션을 추적하기 위해 4바이트 트랜잭션 ID를 사용합니다. &lt;br>
이 ID는 크기에 제한이 있으며, 결국 wraparound될 수 있습니다.
이런 상황이 발생하면 데이터베이스는 더 이상 어떤 트랜잭션이 오래되었는지 새로운 것인지를 결정할 수 없게 됩니다. &lt;br>
VACUUM은 오래된 트랜잭션 ID를 정리함으로써 이를 방지하는 데 도움이 됩니다.&lt;/p></description></item></channel></rss>