Database๋?
: ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ์ฌ๋ฌ ์ฌ๋๋ค์ด ๊ณต์ ํ๊ณ ์ฌ์ฉํ ๋ชฉ์ ์ผ๋ก ํตํฉ ๊ด๋ฆฌ๋๋ ๋ฐ์ดํฐ๋ค์ ์งํฉ์ด๋ค.
๋ฑ์ฐํ ๋ ๊ธฐ๋ฐ์ด ๋ ๋ ์ฅ์๋ฅผ ๋ฒ ์ด์ค์บ ํ๋ผ ํ๋ฏ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ผ๋ ์ฉ์ด๋ 1950๋ ๋ ๋ฏธ๊ตฌ๊ฒก์ ๋ฐ์ดํฐ์ ๊ธฐ๋ฐ ์ฅ์๋ผ๋ ๋ป์์ ์ฒ์ ์ฌ์ฉํ๋ค๊ณ ํ๋ค.
DBMS๋ ๋ค์์ ์ฌ์ฉ์๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด ๋ฐ์ดํฐ๋ฅผ ์ ๊ทผํ ์ ์๋๋ก ํด์ฃผ๋ ์ํํธ์จ์ด๋ค์ ์๋ฏธํ๋ค.
- DBMS๊ฐ ์กด์ฌํ๊ธฐ ์ด์ ์๋ ํ์ผ ์์คํ ์ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ์๋ค.
- ํ์ผ ์์คํ ์ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ด์ฉํด ๋ฐ์ดํฐ๋ฅผ ํ์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒ์ด๋ค. ์๋ฅผ ๋ค์ด, ์ผํ๋ชฐ์ ๊ฒฝ์ฐ ๊ณ ๊ฐ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ๊ณผ ์ฃผ๋ฌธ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ์ด ์กด์ฌํ์ฌ ๊ฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ํ์ผ๋ก ์ ์ฅํด ๊ด๋ฆฌํ๋ค.
- ํ์ผ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ฒ ๋๋ฉด ๋ฐ์ดํฐ ์ค๋ณต, ๋ฐ์ดํฐ ๋ถ์ผ์น ๋ฑ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค.
- ์ด๋ฌํ ํ์ผ ์์คํ ์ ๋จ์ ์ ๋ณด์ํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํ์ํ๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๊ณง DBMS๋ผ ํ ๋งํผ DBMS๋ ์ค์ํ๋ค๊ณ ๋ณผ ์ ์๋ค.
- DBMS๋ฅผ ์ ๋ฌธ์ ์ผ๋ก ์ด์ํ๋ ์ธ๋ ฅ์ DBA(Database Administrator)๋ผ๊ณ ํ๋ค.
๋ฐ์ดํฐ ๋ถ์ผ์น ๋ฌธ์ ๋?
๋ฐ์ดํฐ ๋ถ์ผ์น ๋ฌธ์ ๋ ๋ฐ์ดํฐ๋ฅผ ํ์ผ๋ก ์ ์ฅํ์ ๋, ํ์ผ์ ์์ ํ๋ ๋์ค์ ํด๋น ํ์ผ์ ๋ถ๋ฌ์จ๋ค๋ฉด ๋ฐ์ดํฐ ๋๊ธฐํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ฌ ๋ฐ์ดํฐ๊ฐ ๋ถ์ผ์นํ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
DBMS๋ ํ์ผ ์์คํ ์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ง๋ค์ด์ก๊ธฐ ๋๋ฌธ์ DBMS์ ํน์ง์ ๊ณง ํ์ผ ์์คํ ์ ๋จ์ ์ ์๋ฏธํ๋ค.
1. ๋ฐ์ดํฐ์ ๋ ๋ฆฝ์ฑ
- ๋ฌผ๋ฆฌ์ ๋ ๋ฆฝ์ฑ : DB ์ฌ์ด์ฆ๋ฅผ ๋๋ฆฌ๊ฑฐ๋, ์ฑ๋ฅ ํฅ์์ ์ํด ๋ฐ์ดํฐ ํ์ผ์ ๋๋ฆฌ๊ฑฐ๋ ์๋กญ๊ฒ ์ถ๊ฐํ๋๋ผ๋ ๊ด๋ จ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์์ ํ ํ์๊ฐ ์๋ค.
- ๋ ผ๋ฆฌ์ ๋ ๋ฆฝ์ฑ : DB๋ ๋ค์ํ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ ผ๋ฆฌ์ ์๊ตฌ๋ฅผ ๋ง์กฑ์์ผ์ค ์ ์๋ค.
2. ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ
: ์ฌ๋ฌ ๊ฒฝ๋ก๋ฅผ ํตํด ์๋ชป๋ ๋ฐ์ดํฐ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๋ฐฉ์งํ๋ ๊ธฐ๋ฅ. ๋ฐ์ดํฐ์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํตํด ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๊ตฌํํ๊ฒ ๋๋ค.=> ์๋ฅผ ๋ค๋ฉด ์ ๋ ฅ ์กฐ๊ฑด์ ๋ง์ง ์๋ ์ ๋ ฅ๊ฐ์ ์ ์ฅํ ์ ์๋๋ก ๋ฐฉ์งํ๋ ๊ธฐ๋ฅ์ด ์์ ์ ์๋ค.
3. ๋ฐ์ดํฐ ๋ณด์์ฑ
: ํ๊ฐ๋ ์ฌ์ฉ์๋ค๋ง DB๋ DB ๋ด ์์์ ์ ๊ทผํ ์ ์๋๋ก ๊ณ์ ๊ด๋ฆฌ ๋๋ ์ ๊ทผ ๊ถํ์ ์ค์ ํจ์ผ๋ก์จ ๋ชจ๋ ๋ฐ์ดํฐ์ ๋ณด์์ ๊ตฌํํ ์ ์๋ค.
4. ๋ฐ์ดํฐ ์ผ๊ด์ฑ
: ์ฐ๊ด๋ ์ ๋ณด๋ฅผ ๋ ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋ก ๊ด๋ฆฌํจ์ผ๋ก์จ ์ด๋ค ํ๋์ ๋ฐ์ดํฐ๋ง ๋ณ๊ฒฝํ์ ๊ฒฝ์ฐ์ ๋ฐ์ํ ์ ์๋ ๋ฐ์ดํฐ์ ๋ถ์ผ์น์ฑ์ ๋ฐฐ์ ํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ์ค ์ผ๋ถ ๋ฐ์ดํฐ๋ง ๋ณ๊ฒฝ๋์ด ๋๋จธ์ง ๋ฐ์ดํฐ์ ์ผ์นํ์ง ์๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๋ฐฐ์ ํ ์ ์๋ค.
5. ๋ฐ์ดํฐ์ ์ค๋ณต ์ต์ํ
: DB๋ ๋ฐ์ดํฐ๋ฅผ ํตํฉํด์ ๊ด๋ฆฌํจ์ผ๋ก์จ ๋ฐ์ดํฐ ์ค๋ณต ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.
RDBMS๋ Relational Database Management System์ ์ฝ์๋ก ๊ด๊ณํ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ ์ ๋งํ๋ค. RDB๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ ์ข ๋ฅ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ค. ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ Column๊ณผ Row์ ํ ์ด๋ธ ํํ๋ก ์ ์ฅํ๊ณ , ํ ์ด๋ธ ํํ์ ์คํค๋ง๋ฅผ ์ง์ผ์ผํ๋ค.
- ๊ฐ์ฅ ๋ํ์ ์ธ RDBMS๋ Oracle, Mssql, MySql, DB2, PostgreSQL ๋ฑ์ด ์๋ค
- ๋ค์ํ ์ฉ๋๋ก ์ฌ์ฉ์ด ๊ฐ๋ฅ(๋ฒ์ฉ์ฑ)
- ๋ฐ์ดํฐ์ ๋ถ๋ฅ, ์ ๋ ฌ, ํ์ ์๋๊ฐ ๋น ๋ฆ
- ๋ฐ์ดํฐ์ ์ผ๊ด์ฑ์ ๋ณด์ฆํจ
- ์ ๊ทํ์ ๋ฐ๋ฅธ ๊ฐฑ์ ๋น์ฉ ์ต์ํ
- ๋ฐ๋์ ์คํค๋ง ๊ท๊ฒฉ์ ๋ง์ถฐ์ผ ํ๋ค. ๊ฐฑ์ ๋ฐ์ ํ ์ด๋ธ์ ์ธ๋ฑ์ค ์์ฑ๊ณผ ์คํค๋ง ๋ณ๊ฒฝ์ด ์๊ตฌ๋จ
- ์์ ๋ถํ์ ๋ถ์ฐ์ด ์ด๋ ค์
- ๊ฐ์ฒด์ ๊ด๊ณ์ mapping layer ๋ณต์ก ๊ฐ๋ฅ์ฑ
- ์กฐ์ธ์ด ํ์ํ ๊ฒฝ์ฐ ํ์ฅ์ฑ์ด ์ ์ฝ๋จ
- ํ ์ด๋ธ์ ๊ฐ๋ณ์ฑ์ด ์๋ ๋ฐ์ดํฐ ์ ์ฅ์ด ์ด๋ ค์
- Schema(์คํค๋ง) : ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ ๊ตฌ์กฐ ๋ฐ ํ์, ๊ด๊ณ ๋ฑ์ ์ ๋ณด๋ฅผ ํ์ ์ธ์ด๋ก ๊ธฐ์ ํ ๊ฒ. collection of metadata. RDB๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋, ๋ฐ์ดํฐ์ ๊ณตํต ์์ฑ์ ์๋ณํ์ฌ Column์ผ๋ก ์ ์ํ๊ณ ํ ์ด๋ธ์ ์์ฑํ๋ ๊ฒ์ด ๊ฐ์ฅ ๋จผ์ ํด์ผํ๋ ๊ณผ์ ์ด๋ค. ์ด ๋, ํ๋์ ํ ์ด๋ธ์ด ์๋ ์ฌ๋ฌ ํ ์ด๋ธ์ ๋ง๋ค๊ณ ๊ฐ ํ ์ด๋ธ์ ๊ตฌ์กฐ, ํ์, ๊ด๊ณ๋ฅผ ์ ์ํ๋๋ฐ ์ด๋ฅผ ์คํค๋ง๋ผ๊ณ ํ๋ค. ์ฆ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๋๋ก ์ดํดํ๋ฉด ๋๋ค. ์๋๋ RDB ํ ์ด๋ธ์ ERD์ด๋ค.
- SQL(Structured Query Language) : SQL์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ์์ฑ ๋ฐ ์์ , ํ ์ด๋ธ ๊ด๋ฆฌ, ๋ฐ์ดํฐ ์ถ๊ฐ, ์์ , ์ญ์ , ์กฐํ ๋ฑ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ จ๋ ๊ฑฐ์ ๋ชจ๋ ์์ ์ ์ํด ์ฌ์ฉ๋๋ ์ธ์ด๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ง๋ค ๋ฌธ๋ฒ์ ์ฐจ์ด๋ ์กด์ฌํ์ง๋ง, ํ์ค SQL์ ๊ธฐ๋ณธ์ผ๋ก ํ๊ธฐ ๋๋ฌธ์ SQL์ ํ์์ ์ผ๋ก ์ตํ์ผ ํ๋ค.
- DDL(Data Definition Language) : ๋ฐ์ดํฐ ์ ์ ์ธ์ด
- DML(Data Manipulation Language) : ๋ฐ์ดํฐ ์กฐ์ ์ธ์ด
- DCL(Data Control Language) : ๋ฐ์ดํฐ ์ ์ด ์ธ์ด
์ฐธ๊ณ ์๋ฃ