πμ κ·ν(Normalization)
μ κ·νλ ν μ΄λΈ κ°μ μ€λ³΅μ νμ©νμ§ μλλ€λ λͺ©νλ₯Ό κ°μ§κ³ μλ€. μ€λ³΅λ λ°μ΄ν°λ₯Ό νμ©νμ§ μμΌλ―λ‘μ¨ λ¬΄κ²°μ±μ μ μ§ν μ μκ³ , λ°μ΄ν° λ² μ΄μ€ μ©λ λν μ€μΌμ μλ€.
ν μ΄λΈμ΄ μ΄λ»κ² λΆλ¦¬λλμ§μ λ°λΌ μ κ·ν λ¨κ³κ° λ¬λΌμ§λ€.
πμ 1 μ κ·ν
- μ 1 μ κ·νμ 릴λ μ΄μ μ λͺ¨λ μμ± κ°μ΄ μμκ°μ κ°μ§λ κ²½μ°μ΄λ€.
- μλ κ·Έλ¦Όμ²λΌ μΆμ μ μ μμ μ·¨λ―Έκ° (μν,μμ )μΌλ‘ μμκ°μ΄ μλλ€.μμ± κ°μ΄ μμ κ°μ΄ μλ κ²½μ° μμ κ°μ κ°λλ‘ λ³ν ν΄μ£Όμ΄μΌνλ€.
- κ³ κ°μ·¨λ―Έλ€(μ΄λ¦,μ·¨λ―Έλ€) 릴λ μ΄μ μ κ³ κ°μ·¨λ―Έ(μ΄λ¦,μ·¨λ―Έ)릴λ μ΄μ μΌλ‘ λ°κΎΈμ΄ μ μ₯νλ©΄ μ 1 μ κ·νμ λ§μ‘±νλ€.
πμ 2 μ κ·ν
- μ 2 μ κ·νμ 릴λ μ΄μ μ΄ μ 1 μ κ·νμ λ§μ‘±νκ³ , κΈ°λ³Έν€κ° μλ μμ±μ΄ ν€λ³Έν€μ μμ ν¨μ μ’ μμΌ λλ₯Ό μλ―Ένλ€.
- μμ ν¨μ μ’ μμ Aμ Bκ° λ¦΄λ μ΄μ Rμμ±μ΄κ³ A -> B μ’ μμ±μ΄ μ±λ¦½ν λ,Bκ° Aμ μμ± μ 체μ ν¨μ μ’ μνκ³ λΆλΆ μ§ν© μμ±μ ν¨μ μ’ μνμ§ μμ κ²½μ° μμ ν¨μ μ’ μμ΄λ€.
- λ°λ©΄ A->B μ’ μμ±μμ Aμ μμ± μΌλΆλ₯Ό μ κ±°ν΄λ μ’ μμ±μ΄ μ¬μ ν μ±λ¦½νλ κ²½μ° λΆμμ ν¨μ μ’ μμ΄λ€. μλ₯Ό λ€μ΄(A1,A2) -> B μ’ μμ±μμ A2λ₯Ό μ κ±°νλλ°λ A1 -> B κ° μ¬μ ν μ±λ¦½νλ€λ©΄ λΆμμ ν¨μ μ’ μμ΄λ€.
μ μ¬μ§μμ (νμλ²νΈ,κ°μ’μ΄λ¦)μ 볡ν©ν€λ₯Ό κ°μ§κ³ κ°μ μ νλ©΄ (νμλ²νΈ,κ°μ’μ΄λ¦)μ΄ λͺ¨μ¬μ μ±μ μ΄λΌλ κ°μ κ²°μ νμ§λ§, κ°μμ€μ κ²½μ° κ°μ’μ΄λ¦μ΄ μμ΄λ κ°μμ€μ κ²°μ ν μ μλ€. κ·Έλ¬λ―λ‘ μ΄λ¬ν κ΄κ³λ₯Ό λΆλΆ ν¨μ μ’ μμ΄λΌκ³ νκ³ μ 2μ κ·νμ μμ ν¨μ μ’ μμ λ§μ‘± μμΌμΌ νλ―λ‘ κ°μ’μ΄λ¦κ³Ό κ°μμ€μ λΆλ¦¬νλ©΄ μ 2 μ κ·νμ΄ μ±λ¦½λλ€.
πμ 3 μ κ·ν
- μ 3 μ κ·νμ 릴λ μ΄μ Rμ΄ μ 2 μ κ·νμ λ§μ‘±νκ³ κΈ°λ³Έν€κ° μλ μμ±μ΄ κΈ°λ³Έν€μ λΉμ΄νμ μΌλ‘ μ’ μν λλ₯Ό μλ―Ένλ€.
- μ΄νμ μ’ μμ΄λ A->B,B->C κ° μ±λ¦½ν λ A->Cκ° μ±λ¦½λλ ν¨μμ μ’ μμ±μ μλ―Ένλ€.
μλ κ·Έλ¦Όμ 보면 νμλ²νΈμ κ°μ’μ΄λ¦μ΄ λ³κ²½λλ©΄ μκ°λ£λ λ³κ²½λμ΄μΌ νλ€.μμ±λ€μ λ 립μ μΌλ‘ λ§λλ κ²μ΄ μλλΌ νμ λ²νΈλ‘ νμμ΄ μκ°νλ κ°μ’μ΄λ¦μ μ°Ύκ² νκ³ κ·Έ νμλ²νΈκ° μ°Έμ‘°νλ κ°μ’μ΄λ¦μ μ°Έμ‘°νμ¬ μκ°λ£λ₯Ό μ°Ύκ²νμ¬ νμ λ²νΈλ‘ μκ°λ£λ₯Ό μ°Έμ‘°ν μ μκ² λ§λ€λ©΄ μ 3 μ κ·νμ΄ μ±λ¦½λλ€.
πBCNF μ κ·ν
- BCNF μ κ·νμ 릴λ μ΄μ Rμμ ν¨μ μ’ μμ± X-> Yκ° μ±λ¦½ν λ λͺ¨λ κ²°μ μ Xκ° ν보ν€μΈ μ κ·νμ΄λ€.
κ·Έλ¦Όμμ κΈ°λ³Έν€λ(νμλ²νΈ, νΉκ°μ΄λ¦) μ΄κ³ κ΅μλ (νμλ²νΈ, νΉκ°μ΄λ¦)μ μμ νκ² ν¨μμ μΌλ‘ μ’ μνκ³ μκ³ κ΅μ μμλ νΉκ° μ΄λ¦μ κ²°μ νλ©° κ²°μ μμ μν μ νκ³ μλ€. λ€μμ λͺ¨λ κ²°μ μ Xκ° ν보ν€μΈμ§λ₯Ό νμΈν΄μΌ ν©λλ€. (νμλ²νΈ, νΉκ°μ΄λ¦)μ κΈ°λ³Έν€μ΄λ―λ‘ λΉμ°ν κ²°μ μμ΄λ©° ν보ν€μ΄λ€. νμ§λ§ κ΅μλ κ²°μ μμ΄λ©΄μ ν보ν€κ° μλλ―λ‘ μλμ μΌμͺ½ ν μ΄λΈμ BCNFμ κ·νμ΄ μλλλ€. BCNFμ κ·νμ λ§μ‘±νκΈ° μν΄μ μΌμͺ½μ ν μ΄λΈμ μ€λ₯Έμͺ½κ³Ό κ°μ΄ λΆλ¦¬ν΄μΌ νλ€.
π무μμ€ λΆν΄(Loseless-join decomposition)
μ΄μνμμ ν΄κ²°νκΈ° μν΄μ 릴λ μ΄μ μ λΆν΄ν΄μΌ νλ€. νμ§λ§ 릴λ μ΄μ Rμ λΆν΄ν λ λΆν΄ νμ κ²°κ³Όμ λ¬λΌμ§λ§ λ¬Έμ κ° λ°μνλ―λ‘ μ°λ¦¬λ μμ€ μμ΄ λ¦΄λ μ΄μ μ λΆν΄ ν΄μΌνλ€. 릴λ μ΄μ Rμ R1κ³Ό R2λ‘ λΆν΄ν λ , R1> <R2μ λ§μ‘±νλ κ²½μ° λ¬΄μμ€λΆν΄λΌκ³ νλ€.
REFERENCE
-MYSQLλ‘ λ°°μ°λ λ°μ΄ν° λ² μ΄μ€ κ°λ‘ κ³Ό μ€μ΅
'Dev > Database' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[DB]νΈλμμ (transaction) (0) | 2021.09.14 |
---|---|
[DB]μ΄μνμ(Anomly), ν¨μ μ’ μμ± (Functional Dependency) (0) | 2021.09.13 |
[MYSQL]SQL_1 (0) | 2021.08.21 |
Redisλ? (1) | 2021.08.16 |
λ°μ΄ν° λ² μ΄μ€ μμ€ν κ°λ (0) | 2021.07.20 |