๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋ฐ์ดํฐ๋ค์ ์ฒด๊ณ์ ์ผ๋ก ์ ์ํ๊ณ ๊ตฌ์กฐํํ์ฌ ํํํ๊ธฐ ์ํด์ ๋ง๋ค์ด์ง ๊ฐ๋ ์ ๋๋ค.


์ฌ๋ฌ ๊ฐ์ง ๋ชฉ์ ์ ๋ฐ๋ผ ๋ค์ํ ํํ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ด ์ฌ์ฉ๋๋ฉฐ, ์ด๋ฌํ ๋ชจ๋ธ์ ๋ฐ์ดํฐ ๊ด๋ฆฌ์ ํ์ฉ์ ํจ์จ์ฑ์ ์ฆ์ง์ํค๋ฉฐ, ์ ๋ณด ์์คํ ์ ์ค๊ณํ๊ณ ์ด์ํ๋ ๋ฐ ํ์์ ์ธ ๋๊ตฌ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
1) Conceptual Data Model (Entity-Relationship Model)
Conceptual Data Model์ ๋น์ฆ๋์ค ์๊ตฌ์ฌํญ์ ๋ํ๋ด๊ธฐ ์ํ ๊ณ ์์ค์ ๋ฐ์ดํฐ ํํ์ผ๋ก, ์ ๋ฌด ํ๋ก์ธ์ค์ ์ํฐํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ค์ฌ์ผ๋ก ์ค๊ณ๋ ๋ชจ๋ธ์ ๋๋ค. ์ด ๋ชจ๋ธ์ ๋น์ฆ๋์ค ์ฉ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ์ ์๋ฏธ์ ๊ด๊ณ๋ฅผ ์ถ์์ ์ผ๋ก ํํํ๋ฉฐ, ๊ตฌ์ฒด์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ์ ์ง์ ์ ์ผ๋ก ์์กดํ์ง ์์ต๋๋ค.

- ์ผ๋ฐ ์ฌ์ฉ์๋ค์ด ์ฝ๊ฒ ์ดํดํ ์ ์๋ ๊ฐ๋ ๋ค๋ก ์ด๋ฃจ์ด์ง ๋ชจ๋ธ
- ์ถ์ํ ์์ค์ด ๊ฐ์ฅ ๋์
- ER Diagram ์ฌ์ฉ
2) Logical Data Model (๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ)
๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ Conceptual Data Model์์ ์ป์ ๋น์ฆ๋์ค ์๊ตฌ์ฌํญ์ ๋ฐํ์ผ๋ก ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ๊ตฌํํ๊ธฐ ์ํ ์ค๊ฐ ๋จ๊ณ์ ๋ชจ๋ธ์ ๋๋ค. ์ด ๋ชจ๋ธ์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฒด์ ์ผ๋ก ์ ์ํ๊ณ ํํํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ ํ ์ด๋ธ, ์ด, ๊ด๊ณ ๋ฑ์ ์ ์ํฉ๋๋ค.

๋ค์ํ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ค์ด ์์ง๋ง ๊ฐ์ฅ ์ ๋ช ํ๊ฑด ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ (Relational Data Model)์ ๋๋ค. ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋ฐ์ดํฐ๋ฅผ ํ ์ด๋ธ์ด๋ผ๋ ์ด์ฐจ์ ๊ตฌ์กฐ๋ก ํํํ๊ณ , ํ ์ด๋ธ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ ์ํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋๋ค.
๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ(RDBMS)์ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์
1) ํ
์ด๋ธ(Table): ๋ฐ์ดํฐ๋ฅผ ํ๊ณผ ์ด์ ํํ๋ก ํํํ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋จ์
2) ํ(Row): ํ
์ด๋ธ ๋ด์ ๊ฐ ๋ ์ฝ๋ ๋๋ ๋ฐ์ดํฐ ํญ๋ชฉ.
3) ์ด(Column): ํ
์ด๋ธ ๋ด์ ๊ฐ ์์ฑ(Attribute)
4) ํค(Key): ๋ฐ์ดํฐ๋ฅผ ๊ณ ์ ํ๊ฒ ์๋ณํ๋ ๋ฐ ์ฌ์ฉ๋๋ ์ด ๋๋ ์ด์ ์งํฉ (ex. primary key)
5) ๊ด๊ณ(Relationship): ํ
์ด๋ธ ๊ฐ์ ์ฐ๊ฒฐ์ ๋ํ๋ด๋ฉฐ, ์ด๊ฒ์ด ๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ํต์ฌ
6) ์ ๊ทํ(Normalization): ๋ฐ์ดํฐ ์ค๋ณต์ ์ต์ํํ๊ณ ๋ฐ์ดํฐ์ ์ผ๊ด์ฑ์ ์ ์งํ๊ธฐ ์ํด ํ
์ด๋ธ์ ๊ตฌ์กฐํํ๋ ๊ณผ์ (์ 1 ์ ๊ทํ, ์ 2 ์ ๊ทํ, ์ 3 ์ ๊ทํ)
๊ด๊ณํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ง๊ด์ ์ด๋ฉฐ ํ์คํ๋ ์ง์ ์ธ์ด์ธ SQL(Structured Query Language)์ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ ์ ์๋ ์ฅ์ ์ด ์์ต๋๋ค. ์ด๋ก ์ธํด ๋ฐ์ดํฐ์ ๊ตฌ์กฐํ์ ๊ฒ์์ด ํจ์จ์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค.
3) Physical Data Model (๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ)

๋ฌผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์์ ์ ์๋ ํ ์ด๋ธ, ๊ด๊ณ, ์ธ๋ฑ์ค ๋ฑ์ ์ค์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ๊ตฌํํ๊ธฐ ์ํ ๋ชจ๋ธ์ ๋๋ค. ์ด ๋ชจ๋ธ์ ๋ฐ์ดํฐ์ ์ ์ฅ ๋ฐ ์ ๊ทผ ๋ฐฉ์, ์ธ๋ฑ์ฑ, ํํฐ์ ๋, ์ฑ๋ฅ ์ต์ ํ ๋ฑ๊ณผ ๊ฐ์ ๋ฌผ๋ฆฌ์ ์ธ๋ถ ์ฌํญ์ ๋ค๋ฃน๋๋ค.
์ด ๋ชจ๋ธ์ ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ์์ ์ถ์์ ์ธ ํํ์ ์ค์ ๋ก ๊ตฌํํ๋ ๋จ๊ณ๋ก, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ์ฑ๋ฅ๊ณผ ์์ ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
Data Model: An abstract representation of how data is structured and organized, serving as a blueprint for designing databases or information systems.
Conceptual Data Model: A high-level representation focused on capturing business concepts and relationships between data entities, without delving into technical details.
Logical Data Model: An intermediate-level representation translating the conceptual model into a format understandable by the technical team, defining the structure of the data without specifying physical implementation details.
Physical Data Model: A detailed representation specifying how the logical model will be implemented in a specific database management system, considering technical aspects such as storage structures and indexing.
'Computer Science > Database' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
6 Create(Insert), Update, Delete (1) | 2024.01.11 |
---|---|
5 CRUD (Create, Read, Update and Delete) + Practice tables (0) | 2024.01.08 |
4 Database Languages - DDL, DML, SQL (0) | 2024.01.08 |
3 Relational Database (feat. key, constraints) (1) | 2023.12.23 |
1 Data, Database, DBMS (0) | 2023.12.22 |
๋๊ธ