๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋งฅ๋ฝ์์ ํํฐ์ ๋์ ๋๊ท๋ชจ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ๋ ์๊ณ ๊ด๋ฆฌํ๊ธฐ ์ฌ์ด ์กฐ๊ฐ(ํํฐ์ ๋๋ ์ฒญํฌ๋ผ๊ณ ํจ)์ผ๋ก ๋๋๋ ํ๋ก์ธ์ค๋ฅผ ์๋ฏธํฉ๋๋ค. ๊ฐ ํํฐ์ ์ ๋ณ๋๋ก ์ ์ฅ๋๋ฉฐ ๋ค๋ฅธ ํํฐ์ ๊ณผ ๋ ๋ฆฝ์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋ ์ ์์ผ๋ฏ๋ก ์ฟผ๋ฆฌ ์ฑ๋ฅ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ๋ฐ ์ ๋ฐ์ ์ธ ์์คํ ํจ์จ์ฑ์ ํฅ์์ํค๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์ด ๊ธฐ์ ์ ๋ ๋น ๋ฅธ ์ฟผ๋ฆฌ ์คํ, ํจ์จ์ ์ธ ๋ฐ์ดํฐ ๊ตฌ์ฑ, ์ต์ ํ๋ ์ ๋ฐ์ดํธ ๋ฐ ์ญ์ ํ๋ก์ธ์ค, ๊ฐ์ํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ์ง ๊ด๋ฆฌ ์์ ๊ณผ ๊ฐ์ ๋ค์ํ ์ด์ ์ ์ ๊ณตํฉ๋๋ค.
๋ถํ ์ ์ฃผ์ ๊ฐ๋ ์ ๋ฐ์ดํฐ๊ฐ ํํฐ์ ์ ๋ถ์ฐ๋๋ ๋ฐฉ์์ ๊ฒฐ์ ํ๋ ์ด ๋๋ ์ด ์งํฉ์ธ ๋ถํ ํค์ ๋๋ค. ๋ถํ ํค์ ์ ํ์ ๋ถํ ์ ๋ต๊ณผ ์์คํ ์ ์ ๋ฐ์ ์ธ ์ฑ๋ฅ์ ์ค์ํ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ผ๋ฐ์ ์ธ ํํฐ์ ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ ๋ฒ์ ํํฐ์ ๋, ํด์ ํํฐ์ ๋, ๋ฆฌ์คํธ ํํฐ์ ๋, ๋ณตํฉ ํํฐ์ ๋ ๋ฑ์ด ์์ต๋๋ค.
๋ฒ์ ํํฐ์ ๋์๋ ํํฐ์ ๋ ํค์ ๋ํด ์ง์ ๋ ๊ฐ ๋ฒ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ํํฐ์ ์ผ๋ก ๋๋๋ ์์ ์ด ํฌํจ๋ฉ๋๋ค. ๊ฐ ํํฐ์ ์ ํด๋น ํน์ ๋ฒ์ ๋ด์ ์ํ๋ ๋ถํ ํค ๊ฐ์ด ํฌํจ๋ ๋ ์ฝ๋๋ฅผ ์ ์ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด ํ๋งค ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๋๊ท๋ชจ ํ ์ด๋ธ์ '๋ ์ง' ์ด์ ๊ธฐ์ค์ผ๋ก ๋ถํ ๋ ์ ์์ผ๋ฉฐ ๊ฐ ํํฐ์ ์๋ ํน์ ์ ๋๋ ์ฐ๋์ ํ๋งค ๋ฐ์ดํฐ๊ฐ ๋ณด๊ด๋ฉ๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ํน์ ๊ธฐ๊ฐ ๋์ ๋ ์ฝ๋๋ฅผ ํจ์จ์ ์ผ๋ก ๊ฒ์ํ ์ ์์ผ๋ฉฐ ํนํ ์๊ฐ ๊ธฐ๋ฐ ๋ฐ์ดํฐ๊ฐ ์๋ ์์คํ ์์ ์ฟผ๋ฆฌ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
ํด์ ํํฐ์ ๋์ ํด์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ํํฐ์ ๋ ํค์ ํด์ ๊ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํํฐ์ ์ ๋ ์ฝ๋๋ฅผ ํ ๋นํฉ๋๋ค. ์ด ๋ฐฉ๋ฒ์ ๋ชจ๋ ํํฐ์ ์ ๋ฐ์ดํฐ๋ฅผ ๊ณ ๋ฅด๊ฒ ๋ถ์ฐ์์ผ ๊ท ํ ์กํ ์์คํ ์ฑ๋ฅ์ ๋ณด์ฅํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ํด์ ํํฐ์ ๋์ ์ฌ๋ฌ ์ ์ฅ ์ฅ์น์ ๊ณ ๊ฐ์ฉ์ฑ ์์คํ ์ ๋ฐ์ดํฐ๋ฅผ ๊ท ๋ฑํ๊ฒ ๋ฐฐํฌํ๋ ๋ฐ ํนํ ์ ์ฉํฉ๋๋ค.
๋ชฉ๋ก ๋ถํ ์ ๋ถํ ํค์ ๋ํด ๋ฏธ๋ฆฌ ์ ์๋ ๊ฐ ๋ชฉ๋ก์ ๊ธฐ๋ฐ์ผ๋ก ํํฐ์ ์ ๋ ์ฝ๋๋ฅผ ํ ๋นํฉ๋๋ค. ๊ฐ ํํฐ์ ์ ํด๋น ํํฐ์ ์ ๋ช ์์ ์ผ๋ก ์ํ๋ ๋ถํ ํค ๊ฐ์ด ์๋ ๋ ์ฝ๋๋ฅผ ์ ์ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๊ณ ๊ฐ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ํ ์ด๋ธ์ '๊ตญ๊ฐ' ์ด์ ๊ธฐ์ค์ผ๋ก ๊ตญ๊ฐ๋ณ๋ก ๋ณ๋์ ํํฐ์ ์ผ๋ก ๋ถํ ๋ ์ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ํน์ ๊ฐ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ๋์์ผ๋ก ๊ฒ์ํ ์ ์์ผ๋ฏ๋ก ์ฟผ๋ฆฌ ์ฑ๋ฅ์ด ํฅ์๋ฉ๋๋ค.
๋ณตํฉ ํํฐ์ ๋์ ์ฌ๋ฌ ํํฐ์ ๋ ๋ฐฉ๋ฒ์ ์กฐํฉํ์ฌ ์ฌ์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด, 1์ฐจ ํํฐ์ ๋ ํค์๋ ๋ฒ์ ํํฐ์ ๋์ ์ฌ์ฉํ๊ณ 2์ฐจ ํํฐ์ ๋ ํค์๋ ํด์ ํํฐ์ ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ๋ฉด ๋์ฑ ๋ณต์กํ ํํฐ์ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๋ฉฐ ์ง๋ฅ์ ์ผ๋ก ์ฌ์ฉํ ๋ ์ต๊ณ ์ ์ฑ๋ฅ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
๋ถํ ์ ์ฑ๋ฅ ํฅ์์ ์ ๊ณตํ ๋ฟ๋ง ์๋๋ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์ ์ ๋จ์ํํฉ๋๋ค. ์๋ฅผ ๋ค์ด ํํฐ์ ๋์ ์ฌ์ฉํ๋ฉด ๋ฐฑ์ ๋ฐ ๋ณต์ ์์ ์ ์์๋๋ ์๊ฐ์ ์ค์ผ ์ ์์ ๋ฟ๋ง ์๋๋ผ ์ธ๋ฑ์ค ์ฌ๊ตฌ์ถ ๋ฐ ๋ฐ์ดํฐ ์ฌ๊ตฌ์ฑ ์์ ์ ์ํฅ์ ์ต์ํํ ์ ์์ต๋๋ค. ๋ํ ํํฐ์ ๋์ ๋ค๋ฅธ ํํฐ์ ์ ์จ๋ผ์ธ ์ํ๋ก ์ ์งํ๊ณ ์ก์ธ์คํ ์ ์๋ ์ํ๋ก ์ ์งํ๋ฉด์ ๊ฐ๋ณ ํํฐ์ ์ ๋ฐฑ์ , ๋ณต์ ๋๋ ์ฌ๊ตฌ์ฑํ ์ ์๋๋ก ํ์ฌ ๋ฐ์ดํฐ ๊ฐ์ฉ์ฑ์ ํฅ์์ํฌ ์๋ ์์ต๋๋ค.
๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๊ธฐ ์ํ ๊ฐ๋ ฅํ no-code ํ๋ซํผ์ธ AppMaster ์์๋ ๋ถํ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฝ๊ฒ ๊ตฌ์ถํ๊ณ ๊ด๋ฆฌํ ์ ์๋ ๋๊ตฌ๊ฐ ์ ๊ณต๋ฉ๋๋ค. AppMaster ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ ๋ชจ๋ธ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง)์ ์๊ฐ์ ์ผ๋ก ์์ฑํ๊ณ ๋ชจ๋ PostgreSQL ํธํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ์ ์ฅ์๋ก ์ฌ์ฉํ ์ ์๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ ์ ์์ต๋๋ค.
๋ํ AppMaster ์๋ฒ endpoints ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ์ ๋ํ Swagger(๊ฐ๋ฐฉํ API) ๋ฌธ์๋ฅผ ์๋์ผ๋ก ์์ฑํ์ฌ ๋ถํ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ์ต์ ํํ๋ฉฐ ํญ์ ์ต์ ์ํ๋ก ์ ์งํฉ๋๋ค. AppMaster ์ ๊ฐ๋ ฅํ ๋๊ตฌ ๋ฐ ๊ธฐ๋ฅ๊ณผ ๊ฒฐํฉ๋ ํํฐ์ ๋ ๊ธฐ๋ฅ์ ํ์ฉํ๋ฉด ์น, ๋ชจ๋ฐ์ผ ๋ฐ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์ฅ์ฑ, ์ฑ๋ฅ ๋ฐ ๊ด๋ฆฌ ์ฉ์ด์ฑ์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค.