์คํค๋ง๋ ๋ฌด์์ผ๊น? ์คํค๋ง๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์กฐ์ ์ ์ฝ ์กฐ๊ฑด์ ๊ดํ ์ ๋ฐ์ ์ธ ๋ช ์ธ๋ฅผ ๊ธฐ์ ํ ๋ฉํ๋ฐ์ดํฐ์ ์งํฉ์ด๋ค. DB์ ๊ตฌ์กฐ(๊ฐ์ฒด, ๊ด๊ณ)์ ์ ์ฝ์กฐ๊ฑด์ ๋ช ์ธํด์ผ ํ๋ค. ์ด๋ฅผ ๋ช ์ํ๋ ์ด์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ผ๊ด์ฑ ์๊ฒ ๋ง๋ค๊ธฐ ์ํ ํ์ ์กฐ๊ฑด์ด๋ค.
์คํค๋ง๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐ์ดํฐ ๊ฐ์ฒด(Entity), ์์ฑ(Attribute), ๊ด๊ณ(Relationship) ๋ฐ ๋ฐ์ดํฐ ์กฐ์ ์ ๋ฐ์ดํฐ ๊ฐ๋ค์ด ๊ฐ๋ ์ ์ฝ ์กฐ๊ฑด ๋ฑ์ ๊ดํด ์ ๋ฐ์ ์ผ๋ก ์ ์ํ๋ค.
์คํค๋ง๋ ์ฌ์ฉ์์ ๊ด์ ์ ๋ฐ๋ผ ์ธ๋ถ ์คํค๋ง, ๊ฐ๋
์คํค๋ง, ๋ด๋ถ ์คํค๋ง๋ก ๋๋์ด์ง๋ฉฐ, ์ด๋ ๊ฒ ๋๋๋ ์ด์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋
๋ฆฝ์ฑ์ ์ํด์์ด๋ค.
๋ฐ๋ณต์ ์ผ๋ก ์ด์ผ๊ธฐ ํ์ง๋ง ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฌผ๋ฆฌ์ , ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ๋ณ๊ฒฝ๋๋๋ผ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ํฅ์ ์ฃผ์ง ๋ง์์ผ ํ๋ฉฐ DBMS์ ๊ถ๊ทน์ ๋ชฉํ์ด๋ค. ๋ฐ์ดํฐ๋ชจ๋ธ๋ง ์ญ์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ๊ณผ ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ์ด ์๋ค.
“์คํค๋ง์ 3๋จ๊ณ”
- ์ธ๋ถ ์คํค๋ง(External Schema) : ๊ฐ๊ฐ ์ฌ์ฉ์ ๊ด์ ์์ ์ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ด๋ค. ์ ์ฒด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ๋ ผ๋ฆฌ์ ์ธ ๋ถ๋ถ์ด๋ฉฐ Sub Schema๋ผ๊ณ ๋ ํ๋ค. ์ด๋ ๊ฐ๊ฐ ์ฌ์ฉ์๋ ์์ฉํ๋ก๊ทธ๋๋จธ๊ฐ ์ ๊ทผํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ด๋ค.
- ๊ฐ๋ ์คํค๋ง(Conceptual Schema) : ๋ฒ ๊ธฐ๊ด์ ์ธ ๊ด์ ์์ ์ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ด๋ค. ๋ชจ๋ ์์ฉ์ ๋ํ ์ ์ฒด์ ์ธ ํตํฉ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ด๋ค.
- ๋ด๋ถ ์คํค๋ง(Internal Schema) : ๋ฌผ๋ฆฌ์ ์ ์ฅ ์ฅ์น ๊ด์ ์์ ์ ์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ด๋ค. ๊ฐ๋ ์คํค๋ง์ ๋ํ ์ ์ฅ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๋ค.
“๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ 2์ข ๋ฅ”
- ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ : ์ธ๋ถ ์คํค๋ง์ ๊ฐ๋ ์คํค๋ง ๋จ๊ณ์ ์ฌ์์ผ๋ก, ์์ฉ ํ๋ก๊ทธ๋จ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค
- ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ : ๊ฐ๋ ์คํค๋ง์ ๋ด๋ถ ์คํค๋ง์ ๋จ๊ณ์ ์ฌ์์ผ๋ก, ์์ฉ ํ๋ก๊ทธ๋จ์ ์ํฅ์ ์ฃผ์ง ์๊ณ ๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ ๋ฆฝ์ฑ์ ์ ์งํ๊ธฐ ์ํด์ ์ฌ์(Mapping)์ด๋ผ๋ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ ๊ตฌํ ๊ธฐ๋ฒ์ ์ฌ์ฉํ๋ค. ์ด๋ฅผ ์ด์ฉํ์ฌ ๋ ผ๋ฆฌ์ , ๋ฌผ๋ฆฌ์ ๊ตฌ์กฐ๊ฐ ๋ณํ๋๋ผ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ๋ ๋ณ๊ฒฝ๋์๋ ์๋๋ค.
์ฌ์์ ๋ํด ์ข ๋ ๊น๊ฒ ์ค๋ช ์ ํด๋ณด๋๋ก ํ์. ์๋ ์ฌ์ง์ ๋ณด์.
๋ฐ์ดํฐ ๊ตฌ์กฐ ๊ฐ์ ์ฌ์๊ณผ ๋ฐ์ดํฐ ๋ ๋ฆฝ์ฑ
1, 2, …. n๊ฐ์ ์์ฉ ํ๋ก๊ทธ๋จ์ด ์กด์ฌํ๋ค. ์์ฉํ๋ก๊ทธ๋จ 1์ A, B, C, D์ ์ฌ์ฉํ๋ฉฐ ์์ฉํ๋ก๊ทธ๋จ2๋ B, E, F๋ฅผ ์ฌ์ฉํ๋ค.
์ด๋ค์ B๋ผ๋ ์ค๋ณต๋ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ๋๋ฐ ์ฌ๊ธฐ์ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์๋ A, B, C, D, E, … ๋ฑ์ ๊ฐ์ง๊ณ ์๋ค.
๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์ ์๋ ๋ฐ์ดํฐ A, B๊ฐ ๋ณํ์ด ๋์ด ๊ฐ๊ฐ A’, B’๊ฐ ๋์์ ๋, ์์ฉ ํ๋ก๊ทธ๋จ1์์ B๋ผ๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ์, ์์ฉ ํ๋ก๊ทธ๋จ์์ ์ง์ B๋ผ๋ ๋ฐ์ดํฐ๋ฅผ B’๋ก ๋ณ๊ฒฝํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฐ์ง ์๊ณ ,
๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์ ์กด์ฌํ๋ B’๋ฅผ Mappingํ์ฌ ์ฌ์ฉํจ์ผ๋ก์จ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๊ฐ ๋ณํ๋๋ผ๋ ์์ฉ ํ๋ก๊ทธ๋จ์๋ ์ํฅ์ ๋ผ์น์ง ์๊ฒ ๋์๋ค.
์ด๋ฅผ ํตํด ๊ฒฐ๋ก ์ ์ผ๋ก ๋ฌผ๋ฆฌ์ , ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ๊ฐ ๋ณ๊ฒฝ๋์ด๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ณํ ์์ด ๋ณ๊ฒฝ๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ๋์๋ค.
์ด๋ฐ์๋ ์คํค๋ง์ ๋ํ ์ฌ๋ฌ ๋จ์ด๋ค์ด ์กด์ฌํ๋ค.
- ์คํค๋ง ๋ค์ด์ด๊ทธ๋จ : ์คํค๋ง๋ฅผ ๊ทธ๋ํฝ ํํ๋ก ํํํ ๊ฒ
- ์์คํ
์นดํ๋ก๊ทธ(๋ฐ์ดํฐ ์ฌ์ ) : ๋ฐ์ดํฐ๋ฅผ ์ํ DBA๊ฐ ์ฌ์ฉํ๋ ๋๊ตฌ๋ก์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋์ด ์๋ ๋ชจ๋ ๋ฐ์ดํฐ ๊ฐ์ฒด๋ค์ ๋ํ ์ ์๋ ๋ช
์ธ์ ๊ดํ ์ ๋ณด๋ฅผ ์ ์ง, ๊ด๋ฆฌํ๋ ์์คํ
, ๋ฐ๋ผ์ ์คํค๋ง๊ฐ ์ปดํ์ผ ๋ ๊ฒ๋ ์ด ์นดํ๋ก๊ทธ์ ์ ์ฅํ๋ค.
- ์์คํ ๋ฐ์ดํฐ๋ฒ ์ด์ค : ์ฌ์ฉ์๊ฐ ์ด์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ๋ณ๋๋ ์์คํ ์ด ์ฌ์ฉํ๋ ๊ฒ, ์ฌ์ฉ์์ ์์คํ ๋๋ค ์ ๊ทผ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.
- ๋ฐ์ดํฐ ๋๋ ํฐ๋ฆฌ : ์์คํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ก๋ ๋ฐ์ดํฐ๋ฅผ ์ค์ ๋ก ์ ๊ทผํ ๋ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค, ์์คํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ค๋ฅด๊ฒ ์์คํ ๋ง ์ ๊ทผ ๊ฐ๋ฅํ๋ค
- ๋ฉํ ๋ฐ์ดํฐ : ๋ฐ์ดํฐ์ ๊ดํ ๋ฐ์ดํฐ, ์์คํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋์ด ์๋ ๋ฐ์ดํฐ