์ผ๋ฐ˜ ๊ถŒ์žฅ์‚ฌํ•ญ

์ด ํŽ˜์ด์ง€์—์„œ๋Š” Cloud SQL์˜ ์„ฑ๋Šฅ, ๋‚ด๊ตฌ์„ฑ, ๊ฐ€์šฉ์„ฑ์„ ์ตœ์ ํ™”ํ•˜๊ธฐ ์œ„ํ•œ ๊ถŒ์žฅ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Cloud SQL ์ธ์Šคํ„ด์Šค์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๋ฌธ์ œ ํ•ด๊ฒฐ ์ค‘์— ๋‹ค์Œ์„ ๊ฒ€ํ† ํ•˜์„ธ์š”.

์ธ์Šคํ„ด์Šค ๊ตฌ์„ฑ ๋ฐ ๊ด€๋ฆฌ

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
์šด์˜ ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์ฝ๊ณ  ๋”ฐ๋ผ ์ธ์Šคํ„ด์Šค์— Cloud SQL SLA๊ฐ€ ์ ์šฉ๋˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
๊ธฐ๋ณธ ์ธ์Šคํ„ด์Šค์˜ ์œ ์ง€๊ด€๋ฆฌ ๊ธฐ๊ฐ„์„ ๊ตฌ์„ฑํ•˜์—ฌ ๋ฐฉํ•ด๊ฐ€ ๋˜๋Š” ์—…๋ฐ์ดํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ๊ฐ„์„ ์ œ์–ดํ•˜์„ธ์š”. ์œ ์ง€๋ณด์ˆ˜ ๊ธฐ๊ฐ„์„ ์ฐธ์กฐํ•˜์„ธ์š”.
์ฝ๊ธฐ๊ฐ€ ๋งŽ์ด ๋ฐœ์ƒํ•˜๋Š” ์›Œํฌ๋กœ๋“œ์˜ ๊ฒฝ์šฐ ์ฝ๊ธฐ ๋ณต์ œ๋ณธ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ธฐ๋ณธ ์ธ์Šคํ„ด์Šค์—์„œ ํŠธ๋ž˜ํ”ฝ์„ ์˜คํ”„๋กœ๋“œํ•˜์„ธ์š”. ์›ํ•˜๋Š” ๊ฒฝ์šฐ HAProxy์™€ ๊ฐ™์€ ๋ถ€ํ•˜ ๋ถ„์‚ฐ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณต์ œ๋ณธ์— ๋Œ€ํ•œ ํŠธ๋ž˜ํ”ฝ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ธ์Šคํ„ด์Šค๋ฅผ ์ •๊ธฐ์ ์œผ๋กœ ์‚ญ์ œํ•˜๊ณ  ๋‹ค์‹œ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ ์ธ์Šคํ„ด์Šค ID์˜ ํƒ€์ž„์Šคํƒฌํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ์ธ์Šคํ„ด์Šค ID์˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ์„ฑ์„ ๋†’์ด์„ธ์š”.
์ด์ „ ์ž‘์—…์ด ์™„๋ฃŒ๋˜๊ธฐ ์ „์— ๊ด€๋ฆฌ ์ž‘์—…์„ ์‹œ์ž‘ํ•˜์ง€ ๋งˆ์„ธ์š”.

Cloud SQL ์ธ์Šคํ„ด์Šค๋Š” ์ด์ „ ์ž‘์—…์„ ์™„๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ์ƒˆ๋กœ์šด ์ž‘์—… ์š”์ฒญ์„ ์ˆ˜๋ฝํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์กฐ๊ธฐ์— ์ƒˆ๋กœ์šด ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด ์ž‘์—… ์š”์ฒญ์— ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค ๋‹ค์‹œ ์‹œ์ž‘๋„ ์—ฌ๊ธฐ์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

Google Cloud ์ฝ˜์†”์˜ ์ธ์Šคํ„ด์Šค ์ƒํƒœ์—๋Š” ์ž‘์—… ์‹คํ–‰ ์—ฌ๋ถ€๊ฐ€ ๋ฐ˜์˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋…น์ƒ‰ ์ฒดํฌํ‘œ์‹œ๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ RUNNABLE ์ƒํƒœ์ž„๋งŒ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ž‘์—… ์‹คํ–‰ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด ์ž‘์—… ํƒญ์œผ๋กœ ์ด๋™ํ•˜์—ฌ ์ตœ๊ทผ ์ž‘์—… ์ƒํƒœ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ง€์›ํ•˜๋„๋ก ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์Šคํ† ๋ฆฌ์ง€ ์ž๋™ ์ฆ๊ฐ€ ์‚ฌ์šฉ ์„ค์ • ์ธ์Šคํ„ด์Šค ์„ค์ •์ด ์ค‘์ง€๋˜์—ˆ๊ฑฐ๋‚˜ ์Šคํ† ๋ฆฌ์ง€ ์ž๋™ ์ฆ๊ฐ€ ํ•œ๋„๊ฐ€ ์‚ฌ์šฉ ์„ค์ •๋œ ๊ฒฝ์šฐ Cloud SQL์ด ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ค‘์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์œ ์ง€๋ณด์ˆ˜ ์ž‘์—…์„ ์ˆ˜์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ ์–ด๋„ 20%์˜ ๊ฐ€์šฉ ๊ณต๊ฐ„์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋””์Šคํฌ ๊ณต๊ฐ„์ด 20% ๋ฏธ๋งŒ์ผ ๋•Œ ์•Œ๋ฆผ์„ ๋ฐ›์œผ๋ ค๋ฉด ๊ธฐ์ค€์  ์ดˆ๊ณผ ์œ„์น˜์™€ .8 ๊ฐ’์„ ์‚ฌ์šฉํ•ด ๋””์Šคํฌ ์‚ฌ์šฉ๋ฅ  ์ธก์ •ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ์ธก์ •ํ•ญ๋ชฉ ๊ธฐ๋ฐ˜ ์•Œ๋ฆผ ์ •์ฑ…์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธก์ •ํ•ญ๋ชฉ ๊ธฐ๋ฐ˜ ์•Œ๋ฆผ ์ •์ฑ… ๋งŒ๋“ค๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

CPU ์‚ฌ์šฉ๋ฅ  ์ดˆ๊ณผ๋ฅผ ๋ฐฉ์ง€ํ•˜์„ธ์š”.

Google Cloud ์ฝ˜์†”์˜ ์ธ์Šคํ„ด์Šค ์„ธ๋ถ€์ •๋ณด ํŽ˜์ด์ง€์—์„œ ์ธ์Šคํ„ด์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๊ฐ€์šฉ CPU ๋น„์œจ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธก์ •ํ•ญ๋ชฉ์„ ์ฐธ์กฐํ•˜์„ธ์š”. ๋˜ํ•œ ์ธก์ •ํ•ญ๋ชฉ ๊ธฐ์ค€์  ์•Œ๋ฆผ ์ •์ฑ… ๋งŒ๋“ค๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CPU ์‚ฌ์šฉ๋Ÿ‰์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์ง€์ •๋œ ๊ธฐ์ค€์— ๋„๋‹ฌํ•  ๋•Œ ์•Œ๋ฆผ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฅ ์ด ์ดˆ๊ณผ๋˜์ง€ ์•Š๋„๋ก ์ธ์Šคํ„ด์Šค์˜ CPU ์ˆ˜๋ฅผ ๋Š˜๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CPU๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์ธ์Šคํ„ด์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๊ฐ€ ์ด๋ฏธ ์ตœ๋Œ€ CPU ์ˆ˜์— ๋„๋‹ฌํ•œ ๊ฒฝ์šฐ์—๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์—ฌ๋Ÿฌ ์ธ์Šคํ„ด์Šค๋กœ ์ƒค๋”ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ ์†Œ์ง„์„ ๋ฐฉ์ง€ํ•˜์„ธ์š”.

๋ฉ”๋ชจ๋ฆฌ ์†Œ์ง„์˜ ์ง•ํ›„๋ฅผ ์ฐพ์„ ๋•Œ๋Š” ์ฃผ๋กœ usage ์ธก์ •ํ•ญ๋ชฉ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ์ด ์ธก์ •ํ•ญ๋ชฉ์ด 90% ๋ฏธ๋งŒ์œผ๋กœ ์œ ์ง€๋˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ total_usage ์ธก์ •ํ•ญ๋ชฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์™€ ์šด์˜์ฒด์ œ ์บ์‹œ์—์„œ ํ• ๋‹นํ•œ ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ Cloud SQL ์ธ์Šคํ„ด์Šค๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ ๋น„์œจ์„ ๊ด€์ฐฐํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ์ธก์ •ํ•ญ๋ชฉ์˜ ์ฐจ์ด๋ฅผ ๊ด€์ฐฐํ•˜๋ฉด ํ”„๋กœ์„ธ์Šค์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ์–‘๊ณผ ์šด์˜์ฒด์ œ ์บ์‹œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ์–‘์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์บ์‹œ์—์„œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์šฉ๋„๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ ๋ฌธ์ œ๋ฅผ ์˜ˆ์ธกํ•˜๋ ค๋ฉด ๋‘ ์ธก์ •ํ•ญ๋ชฉ์„ ๋ชจ๋‘ ํ™•์ธํ•˜๊ณ  ํ•จ๊ป˜ ํ•ด์„ํ•ฉ๋‹ˆ๋‹ค. ์ธก์ •ํ•ญ๋ชฉ์ด ๋†’์œผ๋ฉด ์ธ์Šคํ„ด์Šค์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ปค์Šคํ…€ ๊ตฌ์„ฑ, ์›Œํฌ๋กœ๋“œ์— ๋น„ํ•ด ํฌ๊ธฐ๊ฐ€ ์ค„์–ด๋“œ๋Š” ์ธ์Šคํ„ด์Šค, ์ด๋Ÿฌํ•œ ์š”์†Œ์˜ ์กฐํ•ฉ ๋•Œ๋ฌธ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Cloud SQL ์ธ์Šคํ„ด์Šค๋ฅผ ํ™•์žฅํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค์˜ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ์ธ์Šคํ„ด์Šค๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๊ฐ€ ์ด๋ฏธ ์ตœ๋Œ€ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ์— ์žˆ์œผ๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์—ฌ๋Ÿฌ ์ธ์Šคํ„ด์Šค๋กœ ์ƒค๋”ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Google Cloud ์ฝ˜์†”์—์„œ ๋‘ ์ธก์ •ํ•ญ๋ชฉ์„ ๋ชจ๋‘ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธก์ •ํ•ญ๋ชฉ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์ธ์Šคํ„ด์Šค์— ์ตœ์ ์˜ ํŠธ๋žœ์žญ์…˜ ID๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

Resource Type์„ Cloud SQL Database๋กœ ์„ค์ •ํ•˜๊ณ  Metric๋ฅผ Percentage of instance's transaction IDs consumed๋กœ ์„ค์ •ํ•˜์—ฌ Google Cloud ์ฝ˜์†”์˜ ์ธก์ •ํ•ญ๋ชฉ ํƒ์ƒ‰๊ธฐ ํŽ˜์ด์ง€์—์„œ ์ธ์Šคํ„ด์Šค์˜ ํŠธ๋žœ์žญ์…˜ ID ์‚ฌ์šฉ๋Ÿ‰์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ธก์ •ํ•ญ๋ชฉ ํƒ์ƒ‰๊ธฐ๋กœ ์ฐจํŠธ ๋งŒ๋“ค๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๊ณ  ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋ฉด ์ฒญ์†Œ ๊ด€๋ จ ๋ฌธ์ œ๋ฅผ ์ค„์ด๊ฑฐ๋‚˜ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค์˜ ํŠธ๋žœ์žญ์…˜ ID ์‚ฌ์šฉ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์ธ์Šคํ„ด์Šค์˜ ์›Œํฌ๋กœ๋“œ์— ๋”ฐ๋ผ autovacuum ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•˜๊ณ  ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํŠธ๋žœ์žญ์…˜ ID(TXID) ๋žฉ์–ด๋ผ์šด๋“œ ๋ณดํ˜ธ ํ•ด๊ฒฐ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ณด์•ˆ

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
๋น„๊ณต๊ฐœ IP ์‚ฌ์šฉ ๊ณต๊ฐœ IP ์•ก์„ธ์Šค๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ๋น„๊ณต๊ฐœ IP๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ๋ฏธ์Šน์ธ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์„ ์ตœ์†Œํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์Šน์ธ๋œ ๋„คํŠธ์›Œํฌ์—์„œ 0.0.0.0/0 ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ์Šน์ธ๋œ ๋„คํŠธ์›Œํฌ์— 0.0.0.0/0์„ ํฌํ•จํ•˜์ง€ ๋งˆ์„ธ์š”. ๊ทธ๋Ÿฌ๋ฉด ์ „์—ญ ์ธํ„ฐ๋„ท์—์„œ ์ œํ•œ ์—†์ด ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์Šน์ธ๋œ ๋„คํŠธ์›Œํฌ๊ฐ€ ์ง€๋‚˜์น˜๊ฒŒ ํฌ์ง€ ์•Š๋„๋ก ์„ค์ • ์Šน์ธ๋œ ๋„คํŠธ์›Œํฌ์—์„œ ์ž‘์€ CIDR ์ ‘๋‘์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์„ธ์š”. ๊ทธ๋Ÿฌ๋ฉด ๋‹ค์ˆ˜์˜ ํ˜ธ์ŠคํŠธ์—์„œ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CIDR ํ”„๋ฆฌํ”ฝ์Šค๋Š” /16๋ณด๋‹ค ์ž‘์ง€ ์•Š๊ณ  /19๋ณด๋‹ค ํฐ ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
๋น„๋ฐ€๋ฒˆํ˜ธ ์ •์ฑ… ์‚ฌ์šฉ ์„ค์ • ์ธ์Šคํ„ด์Šค ๋น„๋ฐ€๋ฒˆํ˜ธ ์ •์ฑ…์„ ์‚ฌ์šฉํ•˜์—ฌ ์ทจ์•ฝํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๊ตฌ์„ฑ๋˜์ง€ ์•Š๋„๋ก ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค์— ์ ์ ˆํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ •์ฑ…์„ ์ง€์ •ํ•˜๊ณ  ๋งŒ๋ฃŒ ์‹œ๊ฐ„์„ ์„ค์ •ํ•˜๋ฉฐ ๋กœ๊ทธ์ธ ์‹œ๋„ ์‹คํŒจ ์‹œ ๊ณ„์ • ์ž ๊ธˆ์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ณต๊ฐœ IP์šฉ์œผ๋กœ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒฝ์šฐ์— ํŠนํžˆ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์•„ํ‚คํ…์ฒ˜

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
๊ฐ€๋Šฅํ•˜๋ฉด ํฐ ์ธ์Šคํ„ด์Šค๋ฅผ ์ž‘์€ ์ธ์Šคํ„ด์Šค๋กœ ๋ถ„ํ• ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์€ Cloud SQL ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ•˜๋‚˜์˜ ํฐ ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค. ํฐ ๋ชจ๋†€๋ฆฌ์‹ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉด ์ž‘์€ ์ธ์Šคํ„ด์Šค๋“ค์˜ ๊ทธ๋ฃน์„ ๊ด€๋ฆฌํ•  ๋•Œ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
๋„ˆ๋ฌด ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์„ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์„ธ์š”.

์ธ์Šคํ„ด์Šค์˜ ํ…Œ์ด๋ธ” ์ˆ˜๋ฅผ 10,000๊ฐœ ๋ฏธ๋งŒ์œผ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ”์ด ๋„ˆ๋ฌด ๋งŽ์œผ๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ๊ฐ„์ด ์˜ํ–ฅ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌํ˜„

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
์—ฐ๊ฒฐ ํ’€๋ง ๋ฐ ์ง€์ˆ˜ ๋ฐฑ์˜คํ”„์™€ ๊ฐ™์€ ์šฐ์ˆ˜ํ•œ ์—ฐ๊ฒฐ ๊ด€๋ฆฌ ๊ถŒ์žฅ์‚ฌํ•ญ์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ์ด ํ–ฅ์ƒ๋˜๊ณ  Cloud SQL ์—ฐ๊ฒฐ ํ•œ๋„๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ๊ณผ ์ฝ”๋“œ ์ƒ˜ํ”Œ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ ๊ด€๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
์œ ์ง€๋ณด์ˆ˜ ๊ธฐ๊ฐ„ ์ค‘ ์–ธ์ œ๋“ ์ง€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ง€๋ณด์ˆ˜ ์—…๋ฐ์ดํŠธ์— ๋Œ€ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‘๋‹ต์„ ํ…Œ์ŠคํŠธํ•˜์„ธ์š”. ์…€ํ”„์„œ๋น„์Šค ์œ ์ง€๋ณด์ˆ˜๋ฅผ ํ†ตํ•ด ์œ ์ง€๋ณด์ˆ˜ ์—…๋ฐ์ดํŠธ๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜์„ธ์š”. ์œ ์ง€๋ณด์ˆ˜ ์ค‘์— ์ธ์Šคํ„ด์Šค๋ฅผ ์ž ์‹œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜๊ณ  ๊ธฐ์กด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง‘๋‹ˆ๋‹ค. ์œ ์ง€๋ณด์ˆ˜ ์ถœ์‹œ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์˜ˆ์•ฝ๋œ ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์‹œ์Šคํ…œ์ด ๋ณต๊ตฌ๋˜๋Š” ์‹œ๊ฐ„์— ๋Œ€ํ•ด ๋ณด๋‹ค ์ž˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์–ธ์ œ๋“ ์ง€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์•  ์กฐ์น˜์— ๋Œ€ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‘๋‹ต์„ ํ…Œ์ŠคํŠธํ•˜์„ธ์š”. Google Cloud ์ฝ˜์†”, gcloud CLI ๋˜๋Š” API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์žฅ์•  ์กฐ์น˜๋ฅผ ์ˆ˜๋™์œผ๋กœ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์žฅ์•  ์กฐ์น˜ ์‹œ์ž‘์„ ์ฐธ์กฐํ•˜์„ธ์š”.
๋Œ€๊ทœ๋ชจ ํŠธ๋žœ์žญ์…˜์€ ํ”ผํ•˜์„ธ์š”. ํŠธ๋žœ์žญ์…˜์„ ์ž‘๊ณ  ์งง๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”. ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ•˜๋‚˜์˜ ํฐ ํŠธ๋žœ์žญ์…˜์ด ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ฑด์˜ ์ž‘์€ ํŠธ๋žœ์žญ์…˜์œผ๋กœ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.
Cloud SQL ์ธ์ฆ ํ”„๋ก์‹œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์ตœ์‹  ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜์„ธ์š”. Cloud SQL ์ธ์ฆ ํ”„๋ก์‹œ๋ฅผ ์ตœ์‹  ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐ ๋‚ด๋ณด๋‚ด๊ธฐ

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
์„œ๋ฒ„๋ฆฌ์Šค ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๋ฆฌ์Šค ๋‚ด๋ณด๋‚ด๊ธฐ๋Š” ๋‚ด๋ณด๋‚ด๊ธฐ ์ž‘์—…์„ ์ž„์‹œ ์ธ์Šคํ„ด์Šค๋กœ ์˜คํ”„๋กœ๋“œํ•˜๋ฏ€๋กœ ๊ธฐ๋ณธ ์ธ์Šคํ„ด์Šค๊ฐ€ ๊ณ„์† ์ฟผ๋ฆฌ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ผ๋ฐ˜ ์„ฑ๋Šฅ์œผ๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋‚ด๋ณด๋‚ด๊ธฐ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ์ž„์‹œ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ž๋™์œผ๋กœ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค.
์ž‘์€ ์ธ์Šคํ„ด์Šค ํฌ๊ธฐ์˜ ๊ฐ€์ ธ์˜ค๊ธฐ ์†๋„๋ฅผ ๋†’์ด์„ธ์š”. ์ž‘์€ ์ธ์Šคํ„ด์Šค์˜ ๊ฒฝ์šฐ ํฐ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์ž„์‹œ๋กœ ์ธ์Šคํ„ด์Šค์˜ CPU์™€ RAM์„ ์ฆ๊ฐ€์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
Cloud SQL๋กœ ๊ฐ€์ ธ์˜ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๋‚ด๋ณด๋‚ด๋Š” ๊ฒฝ์šฐ ์ ์ ˆํ•œ ์ ˆ์ฐจ๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. ์™ธ๋ถ€ ๊ด€๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๋ฐฑ์—… ๋ฐ ๋ณต๊ตฌ

๊ถŒ์žฅ์‚ฌํ•ญ ์ถ”๊ฐ€ ์ •๋ณด
์ ์ ˆํ•œ Cloud SQL ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•˜์„ธ์š”.

๋ฐ์ดํ„ฐ ์ค‘๋ณต ๋ฐ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฐฑ์—…, point-in-time recovery, ๋‚ด๋ณด๋‚ด๊ธฐ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ฐฉ๋ฒ•๋“ค์€ ๊ฐ๊ฐ ๋‹ค๋ฅธ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ์„œ๋กœ ๋ณดํ˜ธํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ์ „๋žต์„ ํ†ตํ•ด ์ƒํ˜ธ ๋ณด์™„ํ•ฉ๋‹ˆ๋‹ค.

๋ฐฑ์—…์€ ๊ฐ„ํŽธํ•˜๋ฉฐ ์ธ์Šคํ„ด์Šค์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…์„ ์ˆ˜ํ–‰ํ•  ๋‹น์‹œ์˜ ์ƒํƒœ๋กœ ๋ณต์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐฑ์—…์—๋Š” ๋ช‡ ๊ฐ€์ง€ ์ œํ•œ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ญ์ œํ•˜๋ฉด ๋ฐฑ์—…๋„ ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ๋‹จ์ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ํ…Œ์ด๋ธ”์€ ๋ฐฑ์—…ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ธ์Šคํ„ด์Šค๊ฐ€ ์œ„์น˜ํ•˜๋Š” ์ง€์—ญ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฆฌ์ „์—์„œ๋„ ํ•ด๋‹น ๋ฐฑ์—…์—์„œ ์ธ์Šคํ„ด์Šค๋ฅผ ๋ณต์›ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

point-in-time recovery๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ํŠน์ • ์‹œ์ ์œผ๋กœ ๋ณต๊ตฌํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์˜ค๋ฅ˜๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์†์‹ค๋œ ๊ฒฝ์šฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์ „์˜ ์‹œ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. point-in-time recovery๋Š” ํ•ญ์ƒ ์ƒˆ๋กœ์šด ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ฆ‰, ๊ธฐ์กด ์ธ์Šคํ„ด์Šค์—๋Š” point-in-time recovery๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

Cloud Storage์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์™ธ๋ถ€ ํŒŒ์ผ์ด ๋งŒ๋“ค์–ด์ง€๋ฏ€๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๋” ์˜ค๋ž˜ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๋‚ด๋ณด๋‚ด๊ธฐ๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ์‚ญ์ œํ•ด๋„ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์„ ํƒํ•œ ๋‚ด๋ณด๋‚ด๊ธฐ ํ˜•์‹์— ๋”ฐ๋ผ ๋‹จ์ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ํ…Œ์ด๋ธ”๋งŒ ๋‚ด๋ณด๋‚ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠธ๋žœ์žญ์…˜(๋ฐ”์ด๋„ˆ๋ฆฌ) ๋กœ๊ทธ ๋ณด๊ด€์„ ๊ณ ๋ คํ•˜์—ฌ ์ธ์Šคํ„ด์Šค์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ์ž‘์—…์ด ๋งŽ์œผ๋ฉด ๋Œ€๋Ÿ‰์˜ ํŠธ๋žœ์žญ์…˜(๋ฐ”์ด๋„ˆ๋ฆฌ) ๋กœ๊ทธ๊ฐ€ ์ƒ์„ฑ๋˜์–ด ์ƒ๋‹นํ•œ ๋””์Šคํฌ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ  ์ž๋™์œผ๋กœ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๋Š˜๋ฆฌ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ์„ค์ •๋œ ์ธ์Šคํ„ด์Šค์˜ ๋””์Šคํฌ ์ฆ๊ฐ€๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠธ๋žœ์žญ์…˜ ๋กœ๊ทธ ๋ณด๊ด€์„ ๊ณ ๋ คํ•˜์—ฌ ์ธ์Šคํ„ด์Šค ์Šคํ† ๋ฆฌ์ง€์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
์ธ์Šคํ„ด์Šค์™€ ๋ฐฑ์—…์ด ์‹ค์ˆ˜๋กœ ์‚ญ์ œ๋˜์ง€ ์•Š๋„๋ก ๋ณดํ˜ธํ•˜์„ธ์š”.

Google Cloud ์ฝ˜์†”์—์„œ ๋˜๋Š” Terraform์„ ํ†ตํ•ด ๋งŒ๋“  Cloud SQL ์ธ์Šคํ„ด์Šค๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์‹ค์ˆ˜๋กœ ์ธํ•œ ์‚ญ์ œ ๋ฐฉ์ง€๋ฅผ ์‚ฌ์šฉ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์ถ”๊ฐ€ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด Cloud SQL์—์„œ ๋‚ด๋ณด๋‚ด๊ธฐ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๋‚ด๋ณด๋‚ด์„ธ์š”. Cloud Scheduler๋ฅผ REST API์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์—ฌ ๋‚ด๋ณด๋‚ด๊ธฐ ๊ด€๋ฆฌ๋ฅผ ์ž๋™ํ™”ํ•˜์„ธ์š”. ๊ณ ๊ธ‰ ์‹œ๋‚˜๋ฆฌ์˜ค์˜ ๊ฒฝ์šฐ ์ž๋™ํ™”๋ฅผ ์œ„ํ•ด Cloud Scheduler์™€ Cloud Run Functions๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ์„ธ ์กฐ์ • ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ธ์Šคํ„ด์Šค๋ฅผ ๋ฏธ์„ธ ์กฐ์ •ํ•˜๊ณ  ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๊ฒƒ์€ ์ฒญ์†Œ ๊ด€๋ จ ๋ฌธ์ œ๋ฅผ ์ค„์ด๊ฑฐ๋‚˜ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

VACUUM ์ž‘์—…๋งˆ๋‹ค ์ž ๊ธˆ ์ˆ˜์ค€(ํ‘œ์ค€ VACUUM ๋ฐ VACUUM FULL)์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. VACUUM FULL ์˜ต์…˜์€ ๋” ๋งŽ์€ ๋””์Šคํฌ ๊ณต๊ฐ„์„ ํšŒ์ˆ˜ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ํ…Œ์ด๋ธ”์„ ๋…์ ์ ์œผ๋กœ ์ž ๊ทธ๊ณ  ๋А๋ฆฌ๊ฒŒ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  ํ”„๋กœ๋•์…˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…๊ณผ ๋™์‹œ์— ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋Š” VACUUM์˜ ํ‘œ์ค€ ํ˜•์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. VACUUM ์ž‘์—…์„ ์‚ฌ์šฉํ•˜๋ฉด SELECT, INSERT, UPDATE, and DELETE์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋Š” ๊ณ„์† ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. VACUUM ์ž‘์—…์ด ์ง„ํ–‰ ์ค‘์ธ ์ƒํƒœ์—์„œ๋Š” ALTER TABLE๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๊ฐ€ ์žˆ๋Š” ํ…Œ์ด๋ธ” ์ •์˜๋ฅผ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ VACUUM ์ž‘์—…์„ ์™„๋ฃŒํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•˜๋Š” ๋ฐ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ถŒ์žฅ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค.

  • ์‹œ์Šคํ…œ ๋ฉ”๋ชจ๋ฆฌ์™€ maintenance_work_mem๋ฅผ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๊ฐ ๋ฐ˜๋ณต์—์„œ ๋” ๋งŽ์€ ํŠœํ”Œ์„ ์ผ๊ด„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ฒŒ ์ž‘์—…์„ ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค. ์ž๋™ ์ฒญ์†Œ๊ฐ€ ์‹คํ–‰๋  ๋•Œ ์ตœ๋Œ€ autovacuum_max_workers๋ฐฐ๊นŒ์ง€ ์ด ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ• ๋‹น๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ธฐ๋ณธ๊ฐ’์„ ๋„ˆ๋ฌด ๋†’๊ฒŒ ์„ค์ •ํ•˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•˜์„ธ์š”.
  • VACUUM ์ž‘์—…์€ ๋‹ค์ˆ˜์˜ ๋ฏธ๋ฆฌ ์“ฐ๊ธฐ ๋กœ๊ทธ(WAL) ๋ ˆ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด ์ธ์Šคํ„ด์Šค์— ๊ตฌ์„ฑ๋œ ๋ณต์ œ๋ณธ์ด ์—†๋Š” ๊ฒฝ์šฐ์™€ ๊ฐ™์ด WAL ๋ ˆ์ฝ”๋“œ ์ˆ˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์œผ๋ฉด ์ž‘์—…์€ ๋” ๋น ๋ฅด๊ฒŒ ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค.
  • ๊ณ ์ •๋œ ํŠœํ”Œ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ…Œ์ด๋ธ”์ด 20์–ต ํŠธ๋žœ์žญ์…˜ ID ํ•œ๋„์— ๋„๋‹ฌํ•œ ๊ฒฝ์šฐ ๋‹จ์ผ ์‚ฌ์šฉ์ž ๋ชจ๋“œ์—์„œ ์ˆ˜ํ–‰๋˜๋Š” ์ž‘์—…๋Ÿ‰์„ ์ค„์—ฌ๋ณด์„ธ์š”. ๊ฐ€๋Šฅํ•œ ํ•œ ๊ฐ€์ง€ ์˜ต์…˜์€ vacuum_freeze_min_age=1,000,000,000(๊ธฐ๋ณธ๊ฐ’ 50,000,000๋ณด๋‹ค ๋†’์€ ํ—ˆ์šฉ๋˜๋Š” ์ตœ๋Œ“๊ฐ’)์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ์ƒˆ๋กœ์šด ๊ฐ’์€ ๊ณ ์ •๋œ ํŠœํ”Œ ์ˆ˜๋ฅผ ์ตœ๋Œ€ 2๋ฐฐ๊นŒ์ง€ ์ค„์ž…๋‹ˆ๋‹ค.
  • PostgreSQL ๋ฒ„์ „ 12.0 ์ด์ƒ์€ ์ƒ‰์ธ ํ•ญ๋ชฉ์„ ์‚ญ์ œํ•˜์ง€ ์•Š๊ณ ๋„ ์‚ญ์ œ ๋ฐ VACUUM ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ƒ‰์ธ ์‚ญ์ œ์— ์ „์ฒด ์ƒ‰์ธ ์Šค์บ”์ด ํ•„์š”ํ•˜๊ณ  ์ƒ‰์ธ์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ๋Š” ๊ฒฝ์šฐ ์ด ์‹œ๊ฐ„์€ ์ƒ‰์ธ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋ฏ€๋กœ ์ด๋Š” ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒ‰์ธ ํฌ๊ธฐ๊ฐ€ ํฌ๋ฉด ์ƒ‰์ธ ์Šค์บ”์— ์ƒ๋‹นํ•œ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•˜๋ฏ€๋กœ INDEX_CLEANUP OFF๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์‚ญ์ œํ•˜๊ณ  ๊ณ ์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. 12.0 ์ด์ „์˜ PostgreSQL ๋ฒ„์ „์€ ์ƒ‰์ธ ์ˆ˜๋ฅผ ๋ฏธ์„ธ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ค‘์š”ํ•˜์ง€ ์•Š์€ ์ƒ‰์ธ์ด ์žˆ๋Š” ๊ฒฝ์šฐ NON-CRITICAL ์ƒ‰์ธ์„ ์‚ญ์ œํ•˜์—ฌ ์ฒญ์†Œ ์ž‘์—…์„ ๊ฐ€์†ํ™”ํ•˜๋ฉด ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.