๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ง์ดํฌ๋ก์๋น์ค ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง ์์คํ ์ ๊ตฌ์ฑํ๋ ์ํคํ ์ฒ ์ ๊ทผ ๋ฐฉ์์ ๋ํ๋ ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ํน์ ๋น์ฆ๋์ค ๊ธฐ๋ฅ์ ๊ตฌํํ๋๋ก ์ค๊ณ๋ ์๊ณ ๋ ๋ฆฝ์ ์ด๋ฉฐ ๋์จํ๊ฒ ๊ฒฐํฉ๋ ์๋น์ค ๋ชจ์์ผ๋ก ๊ตฌ์ถ๋๋ ์ต์ ์ํํธ์จ์ด ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ ๋๋ค. ์ด ๋์์ธ ํจ๋ฌ๋ค์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ชจ๋์ฑ, ์ ์์ฑ, ํ์ฅ์ฑ ๋ฐ ์ ์ง ๊ด๋ฆฌ์ฑ์ ํฅ์์ํต๋๋ค. ์ด๋ฌํ ๋งฅ๋ฝ์์ ํด๋น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ฑ์ ๊ธฐ๋ณธ ์๋น์ค์ ์ํํ ๊ธฐ๋ฅ, ์์ ์ฑ ๋ฐ ํจ์จ์ฑ์ ๋ณด์ฅํ๋ ๋ฐ ์์ด ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
์ ํต์ ์ธ ๋ชจ๋๋ฆฌ์ ์ํคํ ์ฒ์์๋ ์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ผ๋ฐ์ ์ผ๋ก ๋จ์ผ ์ค์ ์ง์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์์กดํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ง์ดํฌ๋ก์๋น์ค ํจํด์์๋ ์ด๋ฌํ ์ ๊ทผ ๋ฐฉ์๊ณผ์ ์ฐจ์ด๊ฐ ํ์ํฉ๋๋ค. ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ ์ง์์ฑ ์ฑ ์์ ๋ถ์ฐํ๋๋ก ์ค๊ณ๋์์ผ๋ฉฐ, ๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๋ ํด๋น ์คํค๋ง, ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง ๋ฐ ๊ด๋ฆฌ ๋ก์ง์ ์์ ํฉ๋๋ค. ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง์ ๋ํ ์ด๋ฌํ ๋ถ์ฐํ ์ ๊ทผ ๋ฐฉ์์ ์ข ์ข DPS(Database-per-Service) ๋๋ ๋ง์ดํฌ๋ก์๋น์ค๋ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ผ๊ณ ํฉ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๋ต์ ์ฑํํ ๋ ์ป์ ์ ์๋ ๊ฐ์ฅ ํฐ ์ฅ์ ์ค ํ๋๋ ์๋น์ค ๊ฒฝ๊ณ๋ฅผ โโ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฆฌํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๊ฒฉ๋ฆฌ๋ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ์ ์ด์งํ์ฌ ๊ธฐ์กด ๋ชจ๋๋ฆฌ์ ์์คํ ์์ ์์ฃผ ๋ฐ์ํ๋ ๊ฒฝํฉ ๋ฐ ์กฐ์ ๋ฌธ์ ๋ฅผ ์ ๊ฑฐํฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๋ ํน์ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ํ์ด๋ ๊ธฐ์ ์ ๋ ๋ฆฝ์ ์ผ๋ก ์ ํํ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ๊ฐ ์๋น์ค์ ๊ฐ์ฅ ์ ํฉํ ์คํ ๋ฆฌ์ง ์๋ฃจ์ (์: ๊ด๊ณํ, ๋ฌธ์, ํค-๊ฐ ๋๋ ๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค)์ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์์ด ๋ฐ์ดํฐ ๊ด๋ฆฌ, ์ฟผ๋ฆฌ ๋ฐ ์ฒ๋ฆฌ ์ธก๋ฉด์์ ํจ์จ์ฑ์ด ํฅ์๋ฉ๋๋ค.
๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๊ธฐ ์ํ ์ ๋์ ์ธ no-code ํ๋ซํผ์ธ AppMaster ์์๋ ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํคํ ์ฒ์ ์ฑํ์ด ๋งค์ฐ ์ ์ตํ ๊ฒ์ผ๋ก ์ ์ฆ๋์์ต๋๋ค. ๋น์ฌ์ ํ๋ซํผ์ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง ์ต์ ์ผ๋ก ๊ด๋ฒ์ํ Postgresql ํธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ง์ํ๋๋ก ์ค๊ณ๋์ด ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ์์ ํธํ์ฑ์ ์ ๊ณตํฉ๋๋ค. AppMaster ์ฌ์ฉํ๋ฉด ๊ณ ๊ฐ์ ๋ฐ์ดํฐ ๋ชจ๋ธ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง)๊ณผ ๋น์ฆ๋์ค ๋ก์ง์ ์๊ฐ์ ์ผ๋ก ์์ฑํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์กฐ์ ๊ธฐ๋ฅ์ ๋ํ ํ์ํ ์ ์ด ๊ธฐ๋ฅ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ทธ๋ฌ๋ ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ๊ทธ ์์ฒด๋ก ์ผ๋ จ์ ๊ณผ์ ๋ ์์ต๋๋ค. ๋ณธ์ง์ ์ธ ๋ณต์ก์ฑ ์ค ํ๋๋ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ด ํ์ํ ์ฌ๋ฌ ๋ง์ดํฌ๋ก์๋น์ค์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํธ๋์ญ์ ์ ๊ด๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ์๋น์ค๋ ๋ ๋ฆฝ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ด๋ฆฌํ๋ฏ๋ก ๊ฐ๋ ฅํ ์ผ๊ด์ฑ์ ๋ฌ์ฑํ๋ ค๋ฉด ๋ถ์ฐ ํธ๋์ญ์ ๋๋ Saga ํจํด๊ณผ ๊ฐ์ ๋ณต์กํ ์กฐ์ ํ๋กํ ์ฝ์ ์ฌ์ฉํด์ผ ํ ์๋ ์์ต๋๋ค. ์ด๋ฌํ ํจํด์ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ํจ๊ณผ์ ์ผ๋ก ๋ณด์ฅํ ์ ์์ง๋ง ์์คํ ์ ์ค๋ฒํค๋์ ๋ณต์ก์ฑ์ ์ถ๊ฐํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ณผ๋ํ ๋ณต์ก์ฑ์ ํผํ๊ธฐ ์ํด ์ ์ถฉ์ ์ ์ ์คํ๊ฒ ๊ณ ๋ คํ๋ฉด์ ๋ง์ดํฌ๋ก์๋น์ค์ ์ธ๋ถ์ฑ๊ณผ ๋ฐ์ดํฐ ๋ถํ ์ ๊ท ํ์ ๋ง์ถ๋ ๊ฒ์ด ํ์์ ์ ๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ ๋ค๋ฅธ ๊ณผ์ ๋ ํนํ ์ฌ๋ฌ ์๋น์ค๊ฐ ๊ณตํต ์คํค๋ง์ ์์กดํ๋ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์คํค๋ง ๋ณ๊ฒฝ์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ, ์ฃผ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐฉ์งํ๊ณ ์ด์ ๋ฒ์ ๋ฐ ์ดํ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๋ณด์ฅํ๋ ค๋ฉด ์๊ฒฉํ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ ์งํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ์คํค๋ง ์งํ ๋๋ ์คํค๋ง ๋ถ๊ธฐ์ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ์์คํ ์ ๋ณํ์ โโ๋ํ ํ๋ ฅ์ฑ์ ์ ์งํ๋ฉด์ ๋ฐ์ดํฐ ์คํค๋ง์ ๋ํ ์ฆ๋ถ ์ ๋ฐ์ดํธ๋ฅผ ์ฉ์ดํ๊ฒ ํ ์ ์์ต๋๋ค.
๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ค๋ฉด ์ ์ ํ ์ฑ๋ฅ ๋ชจ๋ํฐ๋ง๊ณผ ๊ด์ฐฐ ๊ฐ๋ฅ์ฑ๋ ์ค์ํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ ์ฌ์ ์ธ ๋ณ๋ชฉ ํ์, ๋ฐ์ดํฐ ๋ณต์ ๋ฌธ์ ๋๋ ์์คํ ์ค๋ฅ๋ฅผ ์ค์๊ฐ์ผ๋ก ์๋ณํ๊ณ ์ด๋ฅผ ์ฆ์ ์ํํ ์ ์์ด์ผ ํฉ๋๋ค. ๊ฒฝ๊ณ ๋ฉ์ปค๋์ฆ๊ณผ ๊ฒฐํฉ๋ ๊ณ ๊ธ ๋ชจ๋ํฐ๋ง ๋ฐ ๋ก๊น ๋๊ตฌ๋ ์ด๋ฌํ ์์คํ ์ ์ํ๋ฅผ ์ ์งํ๋ ๋ฐ ๋งค์ฐ ์ ์ฉํ ์ ์์ต๋๋ค.
์์ฝํ๋ฉด, ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ง์ดํฌ๋ก์๋น์ค ์งํฅ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ ๋ฆฝ์ ์ด๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ๋ฅผ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค. ์ด๋ฌํ ์ํคํ ์ฒ ์ ๊ทผ ๋ฐฉ์์ ๊ณ ์ ํ ๊ณผ์ ๋ฅผ ์๊ฒจ์ฃผ์ง๋ง ์ ์ ํ ์ ๋ต๊ณผ ๋๊ตฌ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๋ฐฐํฌํ๋ฉด ์ต์ ์ํํธ์จ์ด ์์คํ ์ ๋ฏผ์ฒฉ์ฑ, ์ ์ฐ์ฑ ๋ฐ ์ ์ง ๊ด๋ฆฌ ๊ฐ๋ฅ์ฑ์ ๋์ผ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ AppMasterno-code ํ๋ซํผ์ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ๋ง์ดํฌ๋ก์๋น์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฑ๋ฅ์ ํ์ฉํ์ฌ ๋ค์ํ ๋น์ฆ๋์ค ์๊ตฌ ์ฌํญ์ ์ฝ๊ณ ํจ์จ์ ์ผ๋ก ์ถฉ์กฑํ๋ ๊ฐ๋ ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.