๐Ÿ’พ SQL_

[SQLD] Data Modeling

CodeLoge 2025. 2. 9. 19:30

#1 Data Modeling?

: ํ˜„์‹ค ์„ธ๊ณ„๋ฅผ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์ถ”์ƒํ™”

: ๊ณ ๊ฐ๊ณผ์˜ ์˜์‚ฌ์†Œํ†ต์„ ํ†ตํ•ด ๊ณ ๊ฐ์˜ ์—…๋ฌด ํ”„๋กœ์„ธ์Šค๋ฅผ ์ดํ•ดํ•ด์•ผํ•จ → ์ดํ•ด ํ›„, ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ํ‘œ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•ด ๋ชจ๋ธ๋ง Ex) ERP

: ๊ณ ๊ฐ์ด ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๋„๋ก ๋ณต์žกํ•˜์ง€ ์•Š๊ฒŒ ๋ชจ๋ธ๋ง

: ๊ณ ๊ฐ์˜ ์—…๋ฌด ํ”„๋กœ์„ธ์Šค๋ฅผ ์ถ”์ƒํ™”, ์†Œํ”„ํŠธ์›จ์–ด ๋ถ„์„, ์„ค๊ณ„ํ•˜๋ฉด์„œ ์ ์  ๋” ์ƒ์„ธํ•ด์ง

: ๊ณ ๊ฐ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค ๊ทœ์น™์„ ์ •์˜, ์ •์˜๋œ ๊ทœ์น™์„ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋กœ ํ‘œํ˜„

 

#2 Data Modeling ํŠน์ง•

์ถ”์ƒํ™” : ๊ณตํ†ต์ ์ธ ํŠน์ง•์„ ์ฐพ๊ณ  ๊ฐ„๋žตํ•˜๊ฒŒ ํ‘œํ˜„

๋‹จ์ˆœํ™” : ๋ณต์žกํ•œ ๋ฌธ์ œ๋ฅผ ํ”ผํ•˜๊ณ  ๋ˆ„๊ตฌ๋‚˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ‘œํ˜„

๋ช…ํ™• : ์˜๋ฏธ์  ํ•ด์„์ด ๋ชจํ˜ธํ•˜์ง€ ์•Š๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ

 

#3 Data Modeling ๋‹จ๊ณ„

1. ๊ฐœ๋…์  ๋ชจ๋ธ๋ง Conceptual Data Modeling → ์ปจ์…‰ ๊ฐœ๋…

: ๊ณ ๊ฐ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ถ„์„ํ•˜๊ณ  ์—…๋ฌด ์ „์ฒด์— ๋Œ€ํ•œ ๋ชจ๋ธ๋ง์„ ์ •ํ•จ

: ๋ณต์žกํ•˜๊ฒŒ ํ‘œํ˜„ X, ์ค‘์š”ํ•œ ๋ถ€๋ถ„์„ ์œ„์ฃผ๋กœ ๋ชจ๋ธ๋งํ•˜๋Š” ๋‹จ๊ณ„

: ์—”ํ„ฐํ‹ฐ(Entity)์™€ ์†์„ฑ(Attribute)์„ ๋„์ถœ, ๊ฐœ๋…์  ERD ์ž‘์„ฑ

→ Entity : ์‹ค์ฒด, ๊ฐ์ฒด๋ผ๋Š” ์˜๋ฏธ ⇒ ์—…๋ฌด์— ํ•„์š”ํ•˜๊ณ  ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ €์žฅ, ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ง‘ํ•ฉ์ ์ธ ๊ฒƒ, ๋ช…์‚ฌ์— ํ•ด๋‹น

: ์—…๋ฌด์ƒ ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•œ ๊ด€์‹ฌ์‚ฌ์— ํ•ด๋‹น

 

2. ๋…ผ๋ฆฌ์  ๋ชจ๋ธ๋ง Logical Data Modeling → ๋ชจ๋ธ์˜ ๋…๋ฆฝ์ ์ธ ํŠน์„ฑ์„ ๋งŒ๋“œ๋Š” ๊ณผ์ •

: ๊ฐœ๋…์  ๋ชจ๋ธ๋ง์„ ๋…ผ๋ฆฌ์  ๋ชจ๋ธ๋ง์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ž‘์—…

: ์‹๋ณ„์ž ๋„์ถœ, ํ•„์š”ํ•œ ๋ชจ๋“  ๊ด€๊ณ„๋ฅผ ์ •์˜

: ์ •๊ทœํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๋…๋ฆฝ์„ฑ์„ ํ™•๋ณด → ์ •๊ทœํ™”์˜ ๊ธฐ๋ณธ ๋ชฉํ‘œ : ํ…Œ์ด๋ธ”๊ฐ„์˜ ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ—ˆ์šฉ X

⇒ ๊ธฐ๋ณธ ๋ชฉํ‘œ๋กœ ์ธํ•ด ๋ฌด๊ฒฐ์„ฑ(Integrity)์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๊ณ , DB์˜ ์ €์žฅ ์šฉ๋Ÿ‰์„ ์ค„์ผ ์ˆ˜ ์žˆ์Œ

 

3. ๋ฌผ๋ฆฌ์  ๋ชจ๋ธ๋ง Physical Modeling

: DB๋ฅผ ์‹ค์ œ ๊ตฌ์ถ•, ํ…Œ์ด๋ธ”ห™์ธ๋ฑ์Šคห™ํ•จ์ˆ˜ ๋“ฑ์„ ์ƒ์„ฑ

: ์„ฑ๋Šฅ, ๋ณด์•ˆ, ๊ฐ€์šฉ์„ฑ์„ ๊ณ ๋ คํ•ด ๊ตฌ์ถ•

 

#4 Data Modeling ๊ด€์ 

๊ด€์  ์„ค๋ช…
๋ฐ์ดํ„ฐ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ
๊ตฌ์กฐ ๋ถ„์„, ์ •์  ๋ถ„์„
ํ”„๋กœ์„ธ์Šค ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์—์„œ ์ˆ˜ํ–‰๋˜๋Š” ์ž‘์—…
์‹œ๋‚˜๋ฆฌ์˜ค ๋ถ„์„, ๋„๋ฉ”์ธ ๋ถ„์„, ๋™์  ๋ถ„์„
๋ฐ์ดํ„ฐ์™€ ํ”„๋กœ์„ธ์Šค ํ”„๋กœ์„ธ์Šค์™€ ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ๊ด€๊ณ„
CRUD ๋ถ„์„ → Create, Read, Update, Delete

 

#5 Data Modeling์„ ์œ„ํ•œ ERD (Entity Relationship Diagram) → Software์ 

: Entity์™€ Entity ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜๋Š” ๋ชจ๋ธ๋ง ๋ฐฉ๋ฒ•

 

#6 ERD ์ž‘์„ฑ ์ ˆ์ฐจ

1. Entity ๋„์ถœํ•˜๊ณ  ๊ทธ๋ฆผ

: ์—…๋ฌด์—์„œ ๊ด€๋ฆฌํ•ด์•ผํ•˜๋Š” ์ง‘ํ•ฉ์„ ๋„์ถœ

2. Entity ๋ฐฐ์น˜

: ์ค‘์š”ํ•œ Entity๋ฅผ ์™ผ์ชฝ ์ƒ๋‹จ์— ๋ฐฐ์น˜

3. Entity ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์„ค์ •

4. ๊ด€๊ณ„๋ช… ์„œ์ˆ 

: Entity๊ฐ„์˜ ์–ด๋–ค ํ–‰์œ„๋‚˜ ์กด์žฌ๊ฐ€ ์žˆ๋Š”์ง€ ํ‘œํ˜„ → ํ™”์‚ดํ‘œ๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์–ด๋–ค ๊ธฐ๋Šฅ์„ ์‹คํ–‰ํ•˜๋Š”์ง€ ์ž‘์„ฑ

5. ๊ด€๊ณ„ ์ฐธ์—ฌ๋„ ํ‘œํ˜„

: ํ•œ๊ฐœ์˜ Entity์™€ ๋‹ค๋ฅธ Entity ๊ฐ„์˜ ์ฐธ์—ฌํ•˜๋Š” ๊ด€๊ณ„์ˆ˜๋ฅผ ์˜๋ฏธ

Ex) ๊ณ ๊ฐ์ด ์—ฌ๋Ÿฌ๊ฐœ์˜ ๊ณ„์ขŒ๋ฅผ ๊ฐœ์„คํ•  ์ˆ˜ ์žˆ๋‹ค.

6. ๊ด€๊ณ„์˜ ํ•„์ˆ˜ ์—ฌ๋ถ€ ํ‘œํ˜„

: ํ•„์ˆ˜๋Š” ๋ฐ˜๋“œ์‹œ ์กด์žฌํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ

Ex) ๋ชจ๋“  ๊ณ ๊ฐ์€ ๋ฐ˜๋“œ์‹œ ํ•˜๋‚˜์˜ ๊ณ„์ขŒ๋ฅผ ๊ฐœ์„คํ•ด์•ผ ํ•œ๋‹ค.

์˜ˆ์ œ ์ด๋ฏธ์ง€

 

#7 Data Modeling ๊ณ ๋ ค์‚ฌํ•ญ

1. ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์˜ ๋…๋ฆฝ์„ฑ

: ๋…๋ฆฝ์„ฑ์ด ํ™•๋ณด๋œ ๋ชจ๋ธ์€ ๊ณ ๊ฐ์˜ ์—…๋ฌด๋ณ€ํ™”์— ๋Šฅ๋™์ ์œผ๋กœ ๋Œ€์‘ ๊ฐ€๋Šฅ

: ๋…๋ฆฝ์„ฑ ํ™•๋ณด๋ฅผ ์œ„ํ•ด์„  ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ํ•จ → ์ •๊ทœํ™”

2. ๊ณ ๊ฐ ์š”๊ตฌ์‚ฌํ•ญ์˜ ํ‘œํ˜„

: ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์œผ๋กœ ๊ณ ๊ฐ๊ณผ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋Ÿฌ ๊ฐ„์— ์˜์‚ฌ์†Œํ†ต์„ ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๊ธฐ์—, ๊ณ ๊ฐ์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ๊ฐ„๊ฒฐํ•˜๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„

3. ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ ํ™•๋ณด

: DB ๊ตฌ์ถ• ์‹œ, ๋ฐ์ดํ„ฐ ํ‘œ์ค€์„ ์ •์˜, ํ‘œ์ค€ ์ค€์ˆ˜์œจ์„ ๊ด€๋ฆฌํ•ด์•ผ ํ•จ.

: ๋ฐ์ดํ„ฐ ํ‘œ์ค€์„ ํ™•๋ณดํ•ด์•ผ ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ์„ ํ–ฅ์ƒ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ