¾Æ·¡ ȯ°æ ¼³Á¤°ªµéÀº autovacuum ±â´É¿¡ ´ëÇؼ ¼³Á¤ÇÏ´Â °ÍµéÀÌ´Ù. autovacuum¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ À̾߱â´Â 22.1.4절¿¡¼ ´Ù·ç°í ÀÖ´Ù.
¼¹ö¿¡¼ autovacuum µ¥¸óÀ» ½ÇÇàÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ ¼³Á¤ÀÇ ÃʱⰪÀº offÀÌ´Ù. ÀÌ µ¥¸óÀÌ ½ÇÇà µÇ·Á¸é, ¸ÕÀú stats_start_collector, stats_row_level °ªÀÌ onÀ¸·Î µÇ¾îÀÖ¾î¾ßÇÑ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù.
autovacuum µ¥¸óÀÌ Çѹø ÀÛ¾÷ÇÏ°í, ½¬´Â ½Ã°£À» ÁöÁ¤ÇÑ´Ù. ÀÌ ½Ã°£À» °æ°úÇϸé, autovacuum µ¥¸óÀº ¼¹ö°¡ °ü¸®ÇÏ´Â µ¥ÀÌÅͺ£À̽ºÀÇ ¸ðµç Å×À̺íÀ» Çϳª¾¿ VACUUM ¸í·É°ú ANALYZE ¸í·ÉÀ» ½ÇÇàÇÒÁö ¾ÈÇÒÁö¸¦ °Ë»çÇÑ´Ù. ÀÌ ½¬´Â ½Ã°£Àº ÃÊ´ÜÀ§·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ÃʱⰪÀº 1ºÐÀÌ´Ù(1m). ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù.
VACUUM ÀÛ¾÷À» ½ÃÀÛÇÒ ÃÖ¼Ò ÀÚ·á ÀÛ¾÷ º¯°æ ¼ö, ÃʱⰪÀº 500ÀÌ´Ù. Áï, ÇϳªÀÇ Å×ÀÌºí¿¡¼ 500°³ÀÇ Æ©ÇÃÀÌ °»½ÅµÇ¾ú°Å³ª, »èÁ¦ µÇ¾ú´Ù¸é, VACUUM ÀÛ¾÷À» ÇÑ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.
ANALYZE ÀÛ¾÷À» ½ÃÀÛÇÒ ÃÖ¼Ò ÀÚ·á ÀÛ¾÷ º¯°æ ¼ö, ÃʱⰪÀº 250ÀÌ´Ù. Áï, ÇϳªÀÇ Å×ÀÌºí¿¡¼ 250°³ÀÇ Æ©ÇÃÀÌ Ãß°¡µÇ¾ú°Å³ª, °»½ÅµÇ¾ú°Å³ª, »èÁ¦ µÇ¾ú´Ù¸é, ANALYZE ÀÛ¾÷À» ÇÑ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.
ÇÑ Å×ÀÌºí¿¡¼ autovacuum_vacuum_threshold °ªÀÌ ÃÊ°úµÇ¾î VACUUM ÀÛ¾÷À» ½ÃÀÛÇÏ·Á°í ÇÒ¶§, Ãß°¡ÀûÀ¸·Î Å×À̺í Å©±âÀÇ º¯È·®µµ ÇÔ²² °í·ÁÇÑ´Ù. ¿©±â¼ ÁöÁ¤ÇÑ ¸¸Å Å©±â°¡ Ä¿Á³À» ¶§, ½ÇÀç ÀÛ¾÷À» ÁøÇàÇÑ´Ù. ÃʱⰪÀº 0.2 (Å×À̺í Å©±âÀÇ 20%)ÀÌ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.
ÇÑ Å×ÀÌºí¿¡¼ autovacuum_analyze_threshold °ªÀÌ ÃÊ°úµÇ¾î ANALYZE ÀÛ¾÷À» ½ÃÀÛÇÏ·Á°í ÇÒ¶§, Ãß°¡ÀûÀ¸·Î Å×À̺í Å©±âÀÇ º¯È·®µµ ÇÔ²² °í·ÁÇÑ´Ù. ¿©±â¼ ÁöÁ¤ÇÑ ¸¸Å Å©±â°¡ Ä¿Á³À» ¶§, ½ÇÀç ÀÛ¾÷À» ÁøÇàÇÑ´Ù. ÃʱⰪÀº 0.1 (Å×À̺í Å©±âÀÇ 10%)ÀÌ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.
ÇÑ Å×ÀÌºí¿¡¼ ¸¶Áö¸· VACUUM ÀÛ¾÷À¸·Î pg_class.relfrozenxid °ªÀÌ ÁöÁ¤µÈ µÚ·Î, ÀÌ ¼³Á¤°ª ¸¸Å ´õ Ä¿Áö¸é VACUUM ÀÛ¾÷À» ÇÑ´Ù. Æ®·£Àè¼Ç ID °ãÄ¡´Â ¹®Á¦¸¦ ¸·±âÀ§ÇÑ °ÍÀÌ´Ù. ¾Ë¾Æ¾ßÇÒ Á¡Àº ¾î¶² ´Ù¸¥ »óȲ¿¡¼ autovacuum ÀÛ¾÷À» ¹«½ÃÇÏ°í À־, ÀÌ ÀÛ¾÷Àº ÁøÇàµÈ´Ù. ÃʱⰪÀº 2¾ïÀÌ´Ù. ÀÌ °ªÀº ¼¹ö°¡ ½ÃÀÛµÉ ¶§¸¸ ÁöÁ¤ÇÒ ¼ö ÀÖÁö¸¸, °¢ Å×ÀÌºí ´ÜÀ§·Î pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ °ªÀ» ÁöÁ¤ÇÔÀ¸·Î ÁÙÀÏ ¼ö´Â ÀÖ´Ù. º¸´Ù ÀÚ¼¼ÇÑ À̾߱â´Â 22.1.3절¿¡¼ ´Ù·ç°í ÀÖ´Ù.
autovacuum µ¥¸óÀÇ ÃÊ°ú ºñ¿ë »ç¿ë½Ã ¸ØÃß´Â ÃÖ´ë ½Ã°£(¹Ð¸®¼¼ÄÁµå)ÀÌ´Ù. ÀÌ °ªÀÌ -1(ÃʱⰪ)À̸é, VACUUM ÀÛ¾÷À» ¸ØÃßÁö ¾Ê´Â´Ù. Ưº°È÷ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, vacuum_cost_delay ¼³Á¤°ªÀÌ »ç¿ëµÉ °ÍÀÌ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.
autovacuum µ¥¸óÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â ÃÖ´ë ºñ¿ëÀ» ÁöÁ¤ÇÑ´Ù. ÀÌ °ªÀÌ -1(ÃʱⰪ)À̸é, ÀÛ¾÷ºñ¿ë¿¡ Á¦ÇÑÀ» µÎÁö ¾Ê´Â´Ù. Ưº°È÷ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, vacuum_cost_limit ¼³Á¤°ªÀÌ »ç¿ëµÉ °ÍÀÌ´Ù. ÀÌ ¼³Á¤Àº postgresql.conf ÆÄÀÏ°ú, ¼¹ö ½ÇÇà ¸í·ÉÁÙ¿¡¼¸¸ ¹Ù²Ü ¼ö ÀÖ´Ù. ÀÌ ¼³Á¤Àº °¢ Å×ÀÌºíº°·Î µû·Î ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ·¸°Ô ÇÏ·Á¸é, pg_autovacuum ½Ã½ºÅÛ Å×À̺íÀÇ Ç׸ñÀ¸·Î Ãß°¡ÇÏ¸é µÈ´Ù.