DB ๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ๋ ๊ณ ๊ฐ์ฉ์ฑ, ์ฑ๋ฅ ํฅ์, ๋ฐ์ดํฐ ์์ค ๋ฐฉ์ง ๋ฑ์ ๋ชฉ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ณต์ ๋ณธ์ ๋ง๋๋ ์์คํ ์ด๋ค. ์ด๋ฅผ ํตํด ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ ๋ง์ ์ฝ๊ธฐ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์๊ณ , ์ฅ์ ๊ฐ ๋ฐ์ํด๋ ๋ฐ์ดํฐ ์์ค์ ์ต์ํํ ์ ์๋ค. ์ฃผ๋ก ๋ง์คํฐ-์ฌ๋ ์ด๋ธ ๊ตฌ์กฐ๋ก ์ด์๋๋ฉฐ, ๋ง์คํฐ DB๋ ์ฐ๊ธฐ ์์ ์ ๋ด๋นํ๊ณ , ์ฌ๋ ์ด๋ธ(๋๋ ๋ ํ๋ฆฌ์นด)๋ ์ฝ๊ธฐ ์์ ์ ๋ด๋นํ๋ค. ์ด ๊ตฌ์กฐ๋ ์ํ์ ํ์ฅ์ฑ๊ณผ ๋ฐ์ดํฐ ๊ฐ์ฉ์ฑ์ ๋์ฌ์ฃผ๋ฉฐ, ๋๊ท๋ชจ ์์คํ ์์ ํจ๊ณผ์ ์ด๋ค.
๋ ํ๋ฆฌ์นด DB๋ ๋ง์คํฐ DB์ ๋ฐ์ดํฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ๋ณต์ ํ ๋ณต์ฌ๋ณธ์ด๋ค. ๋ ํ๋ฆฌ์นด๋ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ฌ์ฉ๋๋ฉฐ, ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ์ํด ๋ง์คํฐ DB์ ๋๊ธฐํ๋๋ค. ์ฃผ๋ก ๋น๋๊ธฐ ๋๋ ๋๊ธฐ ๋ณต์ ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํํ๋ค.
- ๋๊ธฐ ๋ณต์ ๋ ๋ง์คํฐ DB์์ ํธ๋์ญ์ ์ด ๋ฐ์ํ๋ฉด ์ฌ๋ ์ด๋ธ DB๋ก ์ฆ์ ์ ํํ์ฌ, ์ฌ๋ ์ด๋ธ๊ฐ ๋ณ๊ฒฝ ๋ด์ฉ์ ์์ ํ ํ ํธ๋์ญ์ ์ ์๋ฃํ๋ค. ์ด๋ ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ณด์ฅํ์ง๋ง, ๋คํธ์ํฌ ์ง์ฐ์ด๋ ์ฌ๋ ์ด๋ธ์ ์ํ์ ๋ฐ๋ผ ์ฐ๊ธฐ ์์ ์ด ์ง์ฐ๋ ์ ์๋ค.
- ๋น๋๊ธฐ ๋ณต์ ๋ ๋ง์คํฐ DB๊ฐ ํธ๋์ญ์ ์ ์๋ฃํ ํ ์ฌ๋ ์ด๋ธ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ๋ฐฉ์์ด๋ค. ์ด ๋ฐฉ์์์๋ ๋ฐ์ดํฐ ์ ํ๊ฐ ์ง์ฐ๋ ์ ์์ง๋ง, ์ฐ๊ธฐ ์ฑ๋ฅ์ ํฅ์์ํจ๋ค.
DB ๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ๋ ์ฌ๋ฌ ๊ฐ์ง ์ฅ์ ์ ๊ฐ์ง๊ณ ์๋ค:
- ์ฝ๊ธฐ ์ฑ๋ฅ ํฅ์: ๋ ํ๋ฆฌ์นด DB๋ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ์ฌ์ฉ๋๋ฏ๋ก, ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง์ ์ฝ๊ธฐ ์์ฒญ์ ๋ง์คํฐ DB ๋์ ์ฒ๋ฆฌํ ์ ์์ด ์ฑ๋ฅ์ ๋์ธ๋ค.
- ๊ณ ๊ฐ์ฉ์ฑ: ๋ง์คํฐ DB์ ์ฅ์ ๊ฐ ๋ฐ์ํ์ ๋ ์ฌ๋ ์ด๋ธ DB๋ฅผ ๋ง์คํฐ๋ก ์น๊ฒฉํ ์ ์์ด ๋ค์ดํ์์ ์ค์ผ ์ ์๋ค.
- ๋ฐฑ์ ๋ฐ ๋ฐ์ดํฐ ๋ณต๊ตฌ: ๋ ํ๋ฆฌ์นด DB๋ ๋ฐฑ์ ์ ์ํ ์์ ์ ์ธ ๋ณต์ฌ๋ณธ ์ญํ ์ ํ๋ฉฐ, ๋ณต๊ตฌ ์์๋ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค.
๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ์์ ๋ง์คํฐ DB์ ์ฌ๋ ์ด๋ธ DB๋ **๋ฐ์ด๋๋ฆฌ ๋ก๊ทธ(Binary Log)**๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํํ๋ค. ๋ง์คํฐ DB๋ ์ฐ๊ธฐ ์์ ์ ๋ฐ์ด๋๋ฆฌ ๋ก๊ทธ์ ๊ธฐ๋กํ๊ณ , ์ฌ๋ ์ด๋ธ DB๋ ์ด ๋ก๊ทธ๋ฅผ ์ฝ์ด ๋ฐ์ดํฐ๋ฅผ ๋๊ธฐํํ๋ค.
- ๋ง์คํฐ DB์์ ์ฐ๊ธฐ ์์ ์ด ๋ฐ์ํ๋ค.
- ๋ง์คํฐ DB๊ฐ ๋ฐ์ด๋๋ฆฌ ๋ก๊ทธ์ ํธ๋์ญ์ ์ ๊ธฐ๋กํ๋ค.
- ์ฌ๋ ์ด๋ธ DB๊ฐ ์ด ๋ก๊ทธ๋ฅผ ์ฝ์ด์ ๋์ผํ ํธ๋์ญ์ ์ ์คํํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์ดํธํ๋ค.
๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ์ ๋ช ๊ฐ์ง ์ฃผ์์ ์ ๋ค์๊ณผ ๊ฐ๋ค:
- ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ฌธ์ : ๋น๋๊ธฐ ๋ณต์ ์ ๊ฒฝ์ฐ, ์ฌ๋ ์ด๋ธ DB๋ ๋ง์คํฐ DB๋ณด๋ค ์ต์ ์ํ๊ฐ ์๋ ์ ์๋ค.
- ๋ณต์ ์ง์ฐ: ๋คํธ์ํฌ ์ง์ฐ ๋๋ ์ฌ๋ ์ด๋ธ DB์ ์ฑ๋ฅ์ ๋ฐ๋ผ ๋ณต์ ์ง์ฐ์ด ๋ฐ์ํ ์ ์๋ค.
- ๊ด๋ฆฌ ๋ณต์ก์ฑ ์ฆ๊ฐ: ๋ง์คํฐ ์ฅ์ ์ ์ฌ๋ ์ด๋ธ ์น๊ฒฉ ๋ฑ ๋ณต์กํ ๊ด๋ฆฌ ์์ ์ด ํ์ํ ์ ์๋ค.
**๋ณต์ ์ง์ฐ(replication lag)**์ ๋ง์คํฐ DB์ ์ฌ๋ ์ด๋ธ DB ๊ฐ์ ๋ฐ์ดํฐ ์ ํ ์๋ ์ฐจ์ด๋ก ์ธํด ๋ฐ์ํ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ก ์ธํด ์ฌ๋ ์ด๋ธ DB๋ ๋ง์คํฐ DB์ ์ผ๊ด๋ ์ํ๋ฅผ ์ ์งํ์ง ๋ชปํ๊ฒ ๋์ด, ๋ฐ์ดํฐ ์ผ๊ด์ฑ์ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ค:
-
WRITE DB ์ง์ ์กฐํ
๋ณต์ ์ง์ฐ์ด ๋ฐ์ํ ์ ์๋ ์ค์ํ ์์ฒญ์ ๊ฒฝ์ฐ, **๋ง์คํฐ DB(WRITE DB)**๋ฅผ ์ง์ ์กฐํํ์ฌ ์ต์ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ์ฌ์ฉ์์ ์ฃผ๋ฌธ ์ฒ๋ฆฌ๋ ์ค์ํ ํธ๋์ญ์ ์๋ ๋ง์คํฐ DB์์ ์ต์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ ์ผ๊ด์ฑ์ ๋ณด์ฅํ ์ ์๋ค. -
์บ์ฑ(Caching) ํ์ฉ
์์ฃผ ์กฐํ๋๋ ๋ฐ์ดํฐ๋ฅผ ์บ์์ ์ ์ฅํ์ฌ ์ฌ๋ ์ด๋ธ DB์ ์ฝ๊ธฐ ๋ถํ๋ฅผ ์ค์ด๊ณ , ๋น ๋ฅด๊ฒ ์๋ตํ ์ ์๋ค. ์บ์๋ ์ค์๊ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ต์ ์ํ๋ก ์ ์งํ๊ธฐ ์ด๋ ต์ง๋ง, ์บ์ ๋ง๋ฃ ์๊ฐ๊ณผ ๊ฐฑ์ ์ ๋ต์ ์ ์ ํ ์ค์ ํ๋ฉด ๋ณต์ ์ง์ฐ ๋ฌธ์ ๋ฅผ ์ํํ ์ ์๋ค. -
๋ณต์ ์ฃผ๊ธฐ ์กฐ์
์ฌ๋ ์ด๋ธ DB์ ๋ณต์ ์ฃผ๊ธฐ๋ฅผ ๋ ์งง๊ฒ ์ค์ ํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๋ ์์ฃผ ๋๊ธฐํํ๋๋ก ํจ์ผ๋ก์จ ๋ณต์ ์ง์ฐ์ ์ค์ผ ์ ์๋ค. ๊ทธ๋ฌ๋ ๋ณต์ ์ฃผ๊ธฐ๋ฅผ ๋๋ฌด ์งง๊ฒ ์ค์ ํ ๊ฒฝ์ฐ ๋คํธ์ํฌ ๋ถํ๊ฐ ์ปค์ง ์ ์์ผ๋ฏ๋ก, ์์คํ ์์์ ๊ณ ๋ คํ ์ ์ ํ ์ค์ ์ด ํ์ํ๋ค. -
์ผ๊ด์ฑ ์๋ ์ฝ๊ธฐ ์์ฒญ ์ฒ๋ฆฌ
ํธ๋์ญ์ ๋ด์์ ์ฐ๊ธฐ ์์ ํ์ ์ฝ๊ธฐ ์์ฒญ์ ๋ฐ๋์ ๋ง์คํฐ DB์์ ์ฒ๋ฆฌํ๋๋ก ํ๊ฑฐ๋, read-your-writes ํจํด์ ์ ์ฉํ์ฌ ๋ณต์ ์ง์ฐ์ผ๋ก ์ธํ ๋ฐ์ดํฐ ๋ถ์ผ์น๋ฅผ ๋ฐฉ์งํ ์ ์๋ค.
DB ๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ๋ ๋ค์๊ณผ ๊ฐ์ ์ํฉ์์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค:
- ๋๊ท๋ชจ ์ ํ๋ฆฌ์ผ์ด์ : ๋ง์ ์ฌ์ฉ์๊ฐ ๋์์ ์ ์ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ ํ๋ฆฌ์นด DB๋ ์ฝ๊ธฐ ๋ถํ๋ฅผ ๋ถ์ฐ ์ฒ๋ฆฌํด ์ฑ๋ฅ์ ํฅ์์ํจ๋ค.
- ๋ฐ์ดํฐ ๋ถ์: ์ค์๊ฐ ๋ฐ์ดํฐ ์กฐํ๋ณด๋ค ์ฃผ๊ธฐ์ ์ธ ๋ถ์์ด ํ์ํ ๊ฒฝ์ฐ, ๋ ํ๋ฆฌ์นด DB๋ฅผ ์ฌ์ฉํ์ฌ ๋ถ์ ์์ ์ ์ํํ๊ณ ๋ง์คํฐ DB์ ๋ถํ๋ฅผ ์ค์ผ ์ ์๋ค.
- ์ฅ์ ๋ณต๊ตฌ: ์ฅ์ ๋ฐ์ ์ ๋ ํ๋ฆฌ์นด DB๋ฅผ ํตํด ๋ฐ์ดํฐ ๋ณต๊ตฌ ์๊ฐ์ ์ต์ํํ ์ ์๋ค.
DB ๋ ํ๋ฆฌ์นด ๊ตฌ์กฐ๋ ๋๊ท๋ชจ ํธ๋ํฝ์ ์ฒ๋ฆฌํ๊ณ , ๋ฐ์ดํฐ ๊ฐ์ฉ์ฑ์ ๋์ด๋ฉฐ, ํ์ฅ์ฑ์ ์ ๊ณตํ๋ ์ค์ํ ์์คํ ์ํคํ ์ฒ๋ค. ํ์ง๋ง ๋ณต์ ์ง์ฐ๊ณผ ๋ฐ์ดํฐ ์ผ๊ด์ฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ง์คํฐ DB ์ง์ ์กฐํ, ์บ์ฑ ๋ฑ์ ํด๊ฒฐ์ฑ ์ ํจ๊ป ๊ณ ๋ คํด์ผ ํ๋ค.