๐Ÿ—ƒ๏ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”, ํ•จ์ˆ˜ ์ข…์†์„ฑ, ๋ฐ˜์ •๊ทœํ™”| ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํฌํ•จ

์ •์ฒ˜๊ธฐ๋ฐ์ดํ„ฐ๋ฒ ์ด์ŠคDB์ •๊ทœํ™”Normalization๋ฐ˜์ •๊ทœํ™”
์ฝ๋Š”๋ฐ ์•ฝ 10๋ถ„ ์ •๋„ ์†Œ์š”
์ฒ˜์Œ ์“ฐ์—ฌ์ง„ ๋‚ : 2025-07-12
๋งˆ์ง€๋ง‰์œผ๋กœ ๊ณ ์ณ์ง„ ๋‚ : 2025-07-12
์ด ๊ธ€์„ ๋ณด๋Ÿฌ์˜จ ํšŸ์ˆ˜: 51

์š”์•ฝ

์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ์‹œํ—˜์˜ ํ•ต์‹ฌ ๊ฐœ๋…์ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”(Normalization)์˜ ๋ชจ๋“  ๊ฒƒ์„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค. 1NF๋ถ€ํ„ฐ 5NF๊นŒ์ง€ ๊ฐ ์ •๊ทœํ˜•์˜ ๊ฐœ๋…๊ณผ ์กฐ๊ฑด, ํ•จ์ˆ˜ ์ข…์†์„ฑ, ๊ทธ๋ฆฌ๊ณ  ๋ฐ˜์ •๊ทœํ™”์˜ ๊ฐœ๋…๊นŒ์ง€ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๊ณ  ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ๋กœ ๋งˆ๋ฌด๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ์ •๊ทœํ™”(Normalization) ๋Š” ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋‹จ๊ณจ ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜ ์ž…๋‹ˆ๋‹ค. ์ด ํฌ์ŠคํŠธ ํ•˜๋‚˜๋กœ ์™„๋ฒฝํ•˜๊ฒŒ ์ •๋ฆฌํ•ด ๋ณด์„ธ์š”. ๊ฐ ์ •๊ทœํ˜•์˜ ํ•ต์‹ฌ ๊ฐœ๋…๊ณผ ์˜ˆ์‹œ, ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰ ์‹ค์ „ ๋ฌธ์ œ๊นŒ์ง€ ๊ผผ๊ผผํ•˜๊ฒŒ ํ•™์Šตํ•˜๋ฉด ํ•ฉ๊ฒฉ์— ํ•œ ๊ฑธ์Œ ๋” ๋‹ค๊ฐ€๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“ˆ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ •๊ทœํ™”๋ž€?

์ •๊ทœํ™”(Normalization) ๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ์˜ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๊ณ , ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๋ถ„ํ•ดํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ์ •๊ทœํ™”๋ฅผ ํ†ตํ•ด ์ด์ƒ ํ˜„์ƒ(Anomaly)์„ ๋ฐฉ์ง€ํ•˜๊ณ , ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ์˜ ์•ˆ์ •์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด์ƒ ํ˜„์ƒ(Anomaly): ๋ฐ์ดํ„ฐ ์ค‘๋ณต์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋“ค์ž…๋‹ˆ๋‹ค.
    • ์‚ฝ์ž… ์ด์ƒ(Insertion Anomaly): ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ ์—†์ด๋Š” ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์—†๋Š” ํ˜„์ƒ.
    • ์‚ญ์ œ ์ด์ƒ(Deletion Anomaly): ํŠน์ • ์ •๋ณด๋ฅผ ์‚ญ์ œํ•˜๋ฉด, ์›์น˜ ์•Š๋Š” ๋‹ค๋ฅธ ์ •๋ณด๊นŒ์ง€ ํ•จ๊ป˜ ์‚ญ์ œ๋˜๋Š” ํ˜„์ƒ.
    • ๊ฐฑ์‹  ์ด์ƒ(Update Anomaly): ์ค‘๋ณต๋œ ๋ฐ์ดํ„ฐ ์ค‘ ์ผ๋ถ€๋งŒ ์ˆ˜์ •๋˜์–ด ๋ฐ์ดํ„ฐ ๋ถˆ์ผ์น˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ํ˜„์ƒ.

๐Ÿ”‘ ํ•จ์ˆ˜ ์ข…์†์„ฑ(Functional Dependency)

์ •๊ทœํ™”๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„  ํ•จ์ˆ˜ ์ข…์†์„ฑ ๊ฐœ๋…์„ ๋จผ์ € ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์–ด๋–ค ๋ฆด๋ ˆ์ด์…˜์—์„œ ์†์„ฑ A์˜ ๊ฐ’์ด ์†์„ฑ B์˜ ๊ฐ’์„ ์œ ์ผํ•˜๊ฒŒ ๊ฒฐ์ •ํ•  ๋•Œ, "์†์„ฑ B๋Š” ์†์„ฑ A์— ํ•จ์ˆ˜์ ์œผ๋กœ ์ข…์†๋œ๋‹ค"๊ณ  ๋งํ•˜๋ฉฐ, A โ†’ B๋กœ ํ‘œ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ A๋ฅผ ๊ฒฐ์ •์ž(Determinant), B๋ฅผ **์ข…์†์ž(Dependent)**๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

  • ์™„์ „ ํ•จ์ˆ˜ ์ข…์†(Full Functional Dependency): ๊ธฐ๋ณธํ‚ค ์ „์ฒด์— ๋Œ€ํ•ด์„œ๋งŒ ์ข…์†๋˜๋ฉฐ, ๊ธฐ๋ณธํ‚ค์˜ ์ผ๋ถ€์—๋Š” ์ข…์†๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. (2์ •๊ทœํ˜•์˜ ํ•ต์‹ฌ)
  • ๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†(Partial Functional Dependency): ๊ธฐ๋ณธํ‚ค์˜ ์ผ๋ถ€ ์†์„ฑ์— ์ข…์†๋˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.
  • ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†(Transitive Functional Dependency): A โ†’ B์ด๊ณ  B โ†’ C์ผ ๋•Œ, A โ†’ C๊ฐ€ ์„ฑ๋ฆฝํ•˜๋Š” ๊ด€๊ณ„์ž…๋‹ˆ๋‹ค. (3์ •๊ทœํ˜•์˜ ํ•ต์‹ฌ)

๐Ÿ”ข ์ •๊ทœํ™” ๋‹จ๊ณ„ ์š”์•ฝ

์ •๊ทœํ˜•ํ•ต์‹ฌ ์กฐ๊ฑด์ œ๊ฑฐ ๋Œ€์ƒ
1NF (์ œ1์ •๊ทœํ˜•)๋ชจ๋“  ์†์„ฑ ๊ฐ’์€ ์›์ž๊ฐ’(Atomic Value) ์ด์–ด์•ผ ํ•œ๋‹ค.๋‹ค์ค‘๊ฐ’ ์†์„ฑ
2NF (์ œ2์ •๊ทœํ˜•)1NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†์„ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค. (์™„์ „ ํ•จ์ˆ˜ ์ข…์†)๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†
3NF (์ œ3์ •๊ทœํ˜•)2NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†์„ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค.์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†
BCNF (๋ณด์ด์Šค-์ฝ”๋“œ ์ •๊ทœํ˜•)3NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ๋ชจ๋“  ๊ฒฐ์ •์ž๊ฐ€ ํ›„๋ณดํ‚ค์—ฌ์•ผ ํ•œ๋‹ค.ํ›„๋ณดํ‚ค๊ฐ€ ์•„๋‹Œ ๊ฒฐ์ •์ž
4NF (์ œ4์ •๊ทœํ˜•)BCNF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ๋‹ค์น˜ ์ข…์†(Multi-valued Dependency) ์„ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค.๋‹ค์น˜ ์ข…์†
5NF (์ œ5์ •๊ทœํ˜•)4NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ์กฐ์ธ ์ข…์†(Join Dependency) ์„ ์ด์šฉํ•œ๋‹ค.์กฐ์ธ ์ข…์†

1๏ธโƒฃ ์ œ1์ •๊ทœํ˜• (1NF)

์ œ1์ •๊ทœํ˜•์€ ๋ฆด๋ ˆ์ด์…˜์˜ ๋ชจ๋“  ์†์„ฑ ๊ฐ’์ด **์›์ž๊ฐ’(Atomic Value)**์œผ๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ทœ์น™์ž…๋‹ˆ๋‹ค. ์ฆ‰, ํ•˜๋‚˜์˜ ์†์„ฑ ๊ฐ’์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์ด ๋“ค์–ด๊ฐˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: ํ•™์ƒ์ด ์ˆ˜๊ฐ•ํ•˜๋Š” ๊ณผ๋ชฉ์„ ์ €์žฅํ•  ๋•Œ, ์ˆ˜๊ฐ•๊ณผ๋ชฉ ์†์„ฑ์— '์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜'๊ณผ ๊ฐ™์ด ์—ฌ๋Ÿฌ ๊ฐ’์„ ๋„ฃ์œผ๋ฉด 1NF๋ฅผ ์œ„๋ฐ˜ํ•ฉ๋‹ˆ๋‹ค.

[์ •๊ทœํ™” ์ „]

ํ•™๋ฒˆ์ด๋ฆ„์ˆ˜๊ฐ•๊ณผ๋ชฉ
1001๊น€์ฒ ์ˆ˜์ž๋ฃŒ๊ตฌ์กฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜
1002์ด์˜ํฌ์šด์˜์ฒด์ œ

[1NF ์ •๊ทœํ™” ํ›„]

ํ•™๋ฒˆ์ด๋ฆ„์ˆ˜๊ฐ•๊ณผ๋ชฉ
1001๊น€์ฒ ์ˆ˜์ž๋ฃŒ๊ตฌ์กฐ
1001๊น€์ฒ ์ˆ˜์•Œ๊ณ ๋ฆฌ์ฆ˜
1002์ด์˜ํฌ์šด์˜์ฒด์ œ

2๏ธโƒฃ ์ œ2์ •๊ทœํ˜• (2NF)

์ œ2์ •๊ทœํ˜•์€ ๋ฆด๋ ˆ์ด์…˜์ด 1NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , **๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†(Partial Functional Dependency)**์„ ๋ชจ๋‘ ์ œ๊ฑฐํ•œ ์ƒํƒœ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ชจ๋“  ์†์„ฑ์ด ๊ธฐ๋ณธํ‚ค ์ „์ฒด์— ์™„์ „ ํ•จ์ˆ˜ ์ข…์†๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (๊ธฐ๋ณธํ‚ค๊ฐ€ ๋‹จ์ผ ์†์„ฑ์ด๋ฉด ํ•ญ์ƒ 2NF๋ฅผ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค.)

  • ์˜ˆ์‹œ: (ํ•™๋ฒˆ, ๊ณผ๋ชฉ์ฝ”๋“œ)๋ฅผ ๊ธฐ๋ณธํ‚ค๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ˆ˜๊ฐ• ๋ฆด๋ ˆ์ด์…˜์—์„œ, ์„ฑ์ ์€ (ํ•™๋ฒˆ, ๊ณผ๋ชฉ์ฝ”๋“œ) ๋ชจ๋‘์— ์ข…์†๋˜์ง€๋งŒ, ๊ต์ˆ˜๋ช…์€ ๊ณผ๋ชฉ์ฝ”๋“œ์—๋งŒ ์ข…์†(๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†)๋ฉ๋‹ˆ๋‹ค.

[์ •๊ทœํ™” ์ „] (๊ธฐ๋ณธํ‚ค: ํ•™๋ฒˆ, ๊ณผ๋ชฉ์ฝ”๋“œ)

ํ•™๋ฒˆ๊ณผ๋ชฉ์ฝ”๋“œ๊ต์ˆ˜๋ช…์„ฑ์ 
1001CS101๊น€๊ต์ˆ˜A+
1001CS202์ด๊ต์ˆ˜A0
1002CS101๊น€๊ต์ˆ˜B+

[2NF ์ •๊ทœํ™” ํ›„]

[์ˆ˜๊ฐ• ํ…Œ์ด๋ธ”]

ํ•™๋ฒˆ๊ณผ๋ชฉ์ฝ”๋“œ์„ฑ์ 
1001CS101A+
1001CS202A0
1002CS101B+

[๊ณผ๋ชฉ ํ…Œ์ด๋ธ”]

๊ณผ๋ชฉ์ฝ”๋“œ๊ต์ˆ˜๋ช…
CS101๊น€๊ต์ˆ˜
CS202์ด๊ต์ˆ˜

3๏ธโƒฃ ์ œ3์ •๊ทœํ˜• (3NF)

์ œ3์ •๊ทœํ˜•์€ ๋ฆด๋ ˆ์ด์…˜์ด 2NF๋ฅผ ๋งŒ์กฑํ•˜๊ณ , ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†(Transitive Functional Dependency) ์„ ๋ชจ๋‘ ์ œ๊ฑฐํ•œ ์ƒํƒœ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†์ด๋ž€, A โ†’ B์ด๊ณ  B โ†’ C์ผ ๋•Œ A โ†’ C๊ฐ€ ์„ฑ๋ฆฝํ•˜๋Š” ๊ด€๊ณ„๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: ํ•™๋ฒˆ โ†’ ํ•™๊ณผ์ฝ”๋“œ ์ด๊ณ  ํ•™๊ณผ์ฝ”๋“œ โ†’ ํ•™๊ณผ๋ช… ์ด๋ผ๋ฉด, ํ•™๋ฒˆ โ†’ ํ•™๊ณผ๋ช… ์ด๋ผ๋Š” ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

[์ •๊ทœํ™” ์ „] (๊ธฐ๋ณธํ‚ค: ํ•™๋ฒˆ)

ํ•™๋ฒˆ์ด๋ฆ„ํ•™๊ณผ์ฝ”๋“œํ•™๊ณผ๋ช…
1001๊น€์ฒ ์ˆ˜CS์ปดํ“จํ„ฐ๊ณผํ•™
1002์ด์˜ํฌEE์ „์ž๊ณตํ•™
1003๋ฐ•๋ฏผ์ค€CS์ปดํ“จํ„ฐ๊ณผํ•™

[3NF ์ •๊ทœํ™” ํ›„]

[ํ•™์ƒ ํ…Œ์ด๋ธ”]

ํ•™๋ฒˆ์ด๋ฆ„ํ•™๊ณผ์ฝ”๋“œ
1001๊น€์ฒ ์ˆ˜CS
1002์ด์˜ํฌEE
1003๋ฐ•๋ฏผ์ค€CS

[ํ•™๊ณผ ํ…Œ์ด๋ธ”]

ํ•™๊ณผ์ฝ”๋“œํ•™๊ณผ๋ช…
CS์ปดํ“จํ„ฐ๊ณผํ•™
EE์ „์ž๊ณตํ•™

BCNF (Boyce-Codd Normal Form)

BCNF๋Š” 3NF๋ณด๋‹ค ๊ฐ•๋ ฅํ•œ ์ •๊ทœํ˜•์œผ๋กœ, ๋ฆด๋ ˆ์ด์…˜์˜ ๋ชจ๋“  ๊ฒฐ์ •์ž๊ฐ€ ํ›„๋ณดํ‚ค(Candidate Key)์—ฌ์•ผ ํ•œ๋‹ค๋Š” ๊ทœ์น™์ž…๋‹ˆ๋‹ค. 3NF์˜ ์ด์ƒ ํ˜„์ƒ์„ ๋Œ€๋ถ€๋ถ„ ํ•ด๊ฒฐํ•˜์ง€๋งŒ, ๋“œ๋ฌผ๊ฒŒ ๋ฐœ์ƒํ•˜๋Š” ํŠน์ • ์œ ํ˜•์˜ ์ด์ƒ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด BCNF๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

ํ›„๋ณดํ‚ค(Candidate Key)๋ž€?

**ํ›„๋ณดํ‚ค(Candidate Key)**๋Š” ๋ฆด๋ ˆ์ด์…˜(ํ…Œ์ด๋ธ”)์—์„œ ๊ฐ ํŠœํ”Œ(ํ–‰)์„ ์œ ์ผํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œํ•œ์˜ ์†์„ฑ(์—ด)๋“ค์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค.

  • ์œ ์ผ์„ฑ(Uniqueness): ํ•˜๋‚˜์˜ ํ‚ค ๊ฐ’์œผ๋กœ ํ•˜๋‚˜์˜ ํŠœํ”Œ๋งŒ์„ ์œ ์ผํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ตœ์†Œ์„ฑ(Minimality): ์œ ์ผ์„ฑ์„ ๋งŒ์กฑํ•˜๋Š” ์†์„ฑ๋“ค ์ค‘ ๊ฐ€์žฅ ์ ์€ ์ˆ˜์˜ ์†์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ํ‚ค๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์–ด๋–ค ์†์„ฑ์„ ์ œ๊ฑฐํ•˜๋ฉด ์œ ์ผ์„ฑ์ด ๊นจ์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜๋‚˜์˜ ๋ฆด๋ ˆ์ด์…˜์—๋Š” ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ›„๋ณดํ‚ค๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ **๊ธฐ๋ณธํ‚ค(Primary Key)**๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋จธ์ง€ ํ›„๋ณดํ‚ค๋Š” **๋Œ€์ฒดํ‚ค(Alternate Key)**๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

  • ์˜ˆ์‹œ: ํ”ผ์ž ๊ฐ€๊ฒŒ์—์„œ ๊ฐ ํ”ผ์ž์— ๋“ค์–ด๊ฐ€๋Š” ํ† ํ•‘๊ณผ ๊ทธ ํ† ํ•‘์˜ ๊ณต๊ธ‰์—…์ฒด๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์ƒํ™ฉ์„ ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
    • ์ œ์•ฝ ์กฐ๊ฑด:
      1. ํ•˜๋‚˜์˜ ํ”ผ์ž๋Š” ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ ํ† ํ•‘์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      2. ํ•˜๋‚˜์˜ ํ† ํ•‘์€ ์—ฌ๋Ÿฌ ํ”ผ์ž์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      3. ์ค‘์š” ๊ทœ์น™: ๊ฐ๊ฐ์˜ ํ† ํ•‘(Topping)์€ ๋‹จ ํ•˜๋‚˜์˜ ๊ณต๊ธ‰์—…์ฒด(Supplier) ๋กœ๋ถ€ํ„ฐ๋งŒ ๊ณต๊ธ‰๋ฐ›์Šต๋‹ˆ๋‹ค. (์˜ˆ: 'ํŽ˜ํผ๋กœ๋‹ˆ'๋Š” ํ•ญ์ƒ 'A์—…์ฒด'์—์„œ, '์˜ฌ๋ฆฌ๋ธŒ'๋Š” ํ•ญ์ƒ 'B์—…์ฒด'์—์„œ ๊ณต๊ธ‰๋ฐ›์Œ)
    • ํ•จ์ˆ˜ ์ข…์†: ์œ„์˜ ๊ทœ์น™ 3๋ฒˆ์— ๋”ฐ๋ผ ํ† ํ•‘ โ†’ ๊ณต๊ธ‰์—…์ฒด ๋ผ๋Š” ํ•จ์ˆ˜ ์ข…์†์„ฑ์ด ์„ฑ๋ฆฝํ•ฉ๋‹ˆ๋‹ค.
    • BCNF ์œ„๋ฐ˜: ํ† ํ•‘์€ ๊ณต๊ธ‰์—…์ฒด๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒฐ์ •์ž์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ† ํ•‘ ํ•˜๋‚˜๋งŒ์œผ๋กœ๋Š” ํ…Œ์ด๋ธ”์˜ ํŠน์ • ํ–‰์„ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ํ›„๋ณดํ‚ค๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. (์˜ˆ: 'ํŽ˜ํผ๋กœ๋‹ˆ'๋Š” '์Šˆํ”„๋ฆผ ํ”ผ์ž'์—๋„, '๋ฏธํŠธ๋Ÿฌ๋ฒ„ ํ”ผ์ž'์—๋„ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์Œ) ๋ชจ๋“  ๊ฒฐ์ •์ž๊ฐ€ ํ›„๋ณดํ‚ค์—ฌ์•ผ ํ•œ๋‹ค๋Š” BCNF ๊ทœ์น™์„ ์œ„๋ฐ˜ํ•ฉ๋‹ˆ๋‹ค.

[์ •๊ทœํ™” ์ „] (๊ธฐ๋ณธํ‚ค: {ํ”ผ์ž๋ช…, ํ† ํ•‘})

ํ”ผ์ž๋ช…ํ† ํ•‘๊ณต๊ธ‰์—…์ฒด
์Šˆํ”„๋ฆผ ํ”ผ์žํŽ˜ํผ๋กœ๋‹ˆA์—…์ฒด
์Šˆํ”„๋ฆผ ํ”ผ์ž์˜ฌ๋ฆฌ๋ธŒB์—…์ฒด
๋ฒ ์ง€ํ…Œ๋ฆฌ์•ˆ ํ”ผ์ž์˜ฌ๋ฆฌ๋ธŒB์—…์ฒด
๋ฒ ์ง€ํ…Œ๋ฆฌ์•ˆ ํ”ผ์ž๋ฒ„์„ฏC์—…์ฒด
ํŽ˜ํผ๋กœ๋‹ˆ ํ”ผ์žํŽ˜ํผ๋กœ๋‹ˆA์—…์ฒด

[์ด์ƒ ํ˜„์ƒ ๋ฐœ์ƒ]

  • ๊ฐฑ์‹  ์ด์ƒ: ๋งŒ์•ฝ '์˜ฌ๋ฆฌ๋ธŒ'์˜ ๊ณต๊ธ‰์—…์ฒด๊ฐ€ 'B์—…์ฒด'์—์„œ 'D์—…์ฒด'๋กœ ๋ฐ”๋€๋‹ค๋ฉด, '์˜ฌ๋ฆฌ๋ธŒ'๊ฐ€ ํฌํ•จ๋œ ๋ชจ๋“  ํ–‰์„ ์ฐพ์•„ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜๋ผ๋„ ๋ˆ„๋ฝํ•˜๋ฉด ๋ฐ์ดํ„ฐ ๋ถˆ์ผ์น˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

[BCNF ์ •๊ทœํ™” ํ›„]

๋ฌธ์ œ๊ฐ€ ๋˜๋Š” ํ•จ์ˆ˜ ์ข…์†(ํ† ํ•‘ โ†’ ๊ณต๊ธ‰์—…์ฒด)์„ ๊ธฐ์ค€์œผ๋กœ ํ…Œ์ด๋ธ”์„ ๋ถ„ํ•ดํ•˜์—ฌ BCNF๋ฅผ ๋งŒ์กฑ์‹œํ‚ต๋‹ˆ๋‹ค.

[ํ† ํ•‘-๊ณต๊ธ‰์—…์ฒด ํ…Œ์ด๋ธ”] ํ† ํ•‘๊ณผ ๊ณต๊ธ‰์—…์ฒด ๊ฐ„์˜ ๊ด€๊ณ„๋งŒ์„ ์ €์žฅํ•˜์—ฌ ์ •๋ณด ์ค‘๋ณต์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

ํ† ํ•‘๊ณต๊ธ‰์—…์ฒด
ํŽ˜ํผ๋กœ๋‹ˆA์—…์ฒด
์˜ฌ๋ฆฌ๋ธŒB์—…์ฒด
๋ฒ„์„ฏC์—…์ฒด

[ํ”ผ์ž-ํ† ํ•‘ ํ…Œ์ด๋ธ”] ๊ฐ ํ”ผ์ž์— ์–ด๋–ค ํ† ํ•‘์ด ๋“ค์–ด๊ฐ€๋Š”์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋งŒ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

ํ”ผ์ž๋ช…ํ† ํ•‘
์Šˆํ”„๋ฆผ ํ”ผ์žํŽ˜ํผ๋กœ๋‹ˆ
์Šˆํ”„๋ฆผ ํ”ผ์ž์˜ฌ๋ฆฌ๋ธŒ
๋ฒ ์ง€ํ…Œ๋ฆฌ์•ˆ ํ”ผ์ž์˜ฌ๋ฆฌ๋ธŒ
๋ฒ ์ง€ํ…Œ๋ฆฌ์•ˆ ํ”ผ์ž๋ฒ„์„ฏ
ํŽ˜ํผ๋กœ๋‹ˆ ํ”ผ์žํŽ˜ํผ๋กœ๋‹ˆ

์ด๋ ‡๊ฒŒ ๋ถ„ํ•ดํ•˜๋ฉด ๋ฐ์ดํ„ฐ ์ค‘๋ณต์ด ์‚ฌ๋ผ์ ธ ์ด์ƒ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ณ , ๊ฐ ํ…Œ์ด๋ธ”์ด ํ•˜๋‚˜์˜ ๋ช…ํ™•ํ•œ ์ฃผ์ œ(ํ† ํ•‘-๊ณต๊ธ‰์—…์ฒด, ํ”ผ์ž-ํ† ํ•‘)๋ฅผ ๊ฐ–๊ฒŒ ๋˜์–ด ๊ตฌ์กฐ๊ฐ€ ๋” ์•ˆ์ •์ ์ด๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.


4๏ธโƒฃ ์ œ4์ •๊ทœํ˜• (4NF) & 5๏ธโƒฃ ์ œ5์ •๊ทœํ˜• (5NF)

4NF์™€ 5NF๋Š” ์‹ค๋ฌด์—์„œ ๊ฑฐ์˜ ๋‹ค๋ฃจ์ง€ ์•Š์ง€๋งŒ, ๊ฐœ๋…์€ ์•Œ์•„๋‘๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

  • ์ œ4์ •๊ทœํ˜• (4NF): ๋‹ค์น˜ ์ข…์†(Multi-valued Dependency, MVD) ์„ ์ œ๊ฑฐํ•œ ์ •๊ทœํ˜•์ž…๋‹ˆ๋‹ค. 1:N ๊ด€๊ณ„์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ข…์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • ์ œ5์ •๊ทœํ˜• (5NF): ์กฐ์ธ ์ข…์†(Join Dependency, JD) ์„ ์ด์šฉํ•˜๋Š” ์ •๊ทœํ˜•์œผ๋กœ, ๋ชจ๋“  ์กฐ์ธ ์ข…์†์ด ํ›„๋ณดํ‚ค๋ฅผ ํ†ตํ•ด์„œ๋งŒ ์„ฑ๋ฆฝ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”„ ๋ฐ˜์ •๊ทœํ™” (Denormalization)

๋ฐ˜์ •๊ทœํ™”๋Š” ์ •๊ทœํ™”๋œ ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋ฅผ ์˜๋„์ ์œผ๋กœ ํ†ตํ•ฉํ•˜๊ฑฐ๋‚˜ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๊ณผ๋„ํ•œ ์กฐ์ธ(JOIN)์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ๋ง‰๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜์ง€๋งŒ, ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ์ด ๊นจ์งˆ ์œ„ํ—˜์ด ์žˆ์œผ๋ฏ€๋กœ ์‹ ์ค‘ํ•˜๊ฒŒ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  • ์ฃผ์š” ๊ธฐ๋ฒ•: ํ…Œ์ด๋ธ” ํ†ตํ•ฉ, ํ…Œ์ด๋ธ” ๋ถ„ํ• (์ˆ˜ํ‰/์ˆ˜์ง), ์ค‘๋ณต ์†์„ฑ ์ถ”๊ฐ€ ๋“ฑ

๐Ÿ“ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ

๋ฌธ์ œ๋ฆด๋ ˆ์ด์…˜์˜ ๋ชจ๋“  ์†์„ฑ ๊ฐ’์ด ์›์ž๊ฐ’(Atomic Value)์œผ๋กœ๋งŒ ๊ตฌ์„ฑ๋˜๋„๋ก ํ•˜๋Š” ์ •๊ทœํ˜•์€ ๋ฌด์—‡์ธ๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ
๋ฌธ์ œ๋ถ€๋ถ„ ํ•จ์ˆ˜ ์ข…์†์„ ์ œ๊ฑฐํ•˜๊ณ , ๋ชจ๋“  ์†์„ฑ์ด ๊ธฐ๋ณธํ‚ค์— ์™„์ „ ํ•จ์ˆ˜ ์ข…์†๋˜๋„๋ก ํ•˜๋Š” ์ •๊ทœํ˜•์€ ๋ฌด์—‡์ธ๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ
๋ฌธ์ œ์ดํ–‰ ํ•จ์ˆ˜ ์ข…์†(Transitive Functional Dependency)์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์ •๊ทœํ˜•์€ ๋ฌด์—‡์ธ๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ
๋ฌธ์ œ๋ฆด๋ ˆ์ด์…˜์˜ ๋ชจ๋“  ๊ฒฐ์ •์ž๊ฐ€ ํ›„๋ณดํ‚ค(Candidate Key)๊ฐ€ ๋˜๋„๋ก ํ•˜์—ฌ, 3NF์—์„œ ๋ฐœ์ƒํ•˜๋Š” ์ผ๋ถ€ ์ด์ƒ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ์ •๊ทœํ˜•์€ ๋ฌด์—‡์ธ๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ
๋ฌธ์ œ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•˜๊ณ  ๋ฌด๊ฒฐ์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋ฅผ ๋ถ„ํ•ดํ•˜๋Š” ๊ณผ์ •์„ ๋ฌด์—‡์ด๋ผ๊ณ  ํ•˜๋Š”๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ
๋ฌธ์ œ์ •๊ทœํ™”๋œ ํ…Œ์ด๋ธ”์—์„œ ์‹œ์Šคํ…œ ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•ด ์˜๋„์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๊ฑฐ๋‚˜ ํ…Œ์ด๋ธ”์„ ํ†ตํ•ฉํ•˜๋Š” ์ž‘์—…์„ ๋ฌด์—‡์ด๋ผ๊ณ  ํ•˜๋Š”๊ฐ€?
๋‹ต๋ณ€
์ •๋‹ต์ •๋‹ต ๋ณด๊ธฐ

โžก๏ธ ๋‹ค์Œ ์ฝ์œผ๋ฉด ์ข‹์€ ํฌ์ŠคํŒ…

๋‹ค๋ฅธ ๊ธ€

2025-07-14

์„œ๋ธŒ๋„ท ๋งˆ์Šคํฌ, ์„œ๋ธŒ๋„คํŒ… | ๐Ÿš€ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํฌํ•จ

2025-07-13

โ˜๏ธ ํด๋ผ์šฐ๋“œ & ๊ฐ€์ƒํ™” ์‹ ๊ธฐ์ˆ (๋„์ปค, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค, ์„œ๋ฒ„๋ฆฌ์Šค) | ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„

2025-07-13

๐Ÿ“ก ๋„คํŠธ์›Œํฌ ์‹ ๊ธฐ์ˆ (SDN, MQTT, MEC, NFV) | ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„

2025-07-13

๐Ÿ’ญ ๋ฉ”๋ชจ๋ฆฌ ํŽ˜์ด์ง€ ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜ | ๐Ÿš€ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํ’€์ด ๋ฐฉ๋ฒ• ํฌํ•จ

2025-07-13

๐Ÿค– ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜ | ๐Ÿš€ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํ’€์ด ๋ฐฉ๋ฒ• ํฌํ•จ

2025-07-13

๐Ÿ’ป ์†Œํ”„ํŠธ์›จ์–ด ์‹ ๊ธฐ์ˆ (SOA, CPS, MSA) | ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„

2025-07-13

๐Ÿค– ํ…Œ์ŠคํŠธ ํ•˜๋„ค์Šค ๊ตฌ์„ฑ์š”์†Œ ์™„๋ฒฝ ์ •๋ฆฌ |๐Ÿš€ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํฌํ•จ

2025-07-12

โฌ› ๋ธ”๋ž™๋ฐ•์Šค ํ…Œ์ŠคํŠธ ์œ ํ˜• ์ •๋ฆฌ | ๐Ÿš€ ์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํฌํ•จ

2025-07-12

๐Ÿ”„ ์ธํ„ฐํŽ˜์ด์Šค ํ†ต์‹  ๊ธฐ์ˆ : AJAX, Fetch, WebSocket, GraphQL | ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„ ๋ฌธ์ œ ํฌํ•จ

2025-07-12

๐Ÿ“„ ๋ฐ์ดํ„ฐ ํ‘œํ˜„ ํ˜•์‹: JSON, XML, YAML ๋น„๊ต ๋ถ„์„ | ๐Ÿš€์ •์ฒ˜๊ธฐ ์‹ค๊ธฐ ๋Œ€๋น„