Notice
Recent Posts
Recent Comments
Link
μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Python 1000000007
- μ΄μ½ν 2021
- λΉλκ΄λ¦¬λꡬ μ°¨μ΄
- μΉ λμ κ³Όμ
- λ°±νΈλνΉ
- λ¬λ¦¬κΈ° κ²½μ£Ό νμ΄μ¬ μκ°μ΄κ³Ό
- finalize μλ νΈμΆ
- κΈ°μ¬λ¨μμ 무기 νμ΄μ¬
- λ¬λ¦¬κΈ° κ²½μ£Ό νμ΄μ¬
- @RequestMappingκ³Ό @GetMapping
- νλ‘κ·Έλλ¨Έμ€ 142086
- RDBMSμ NoSQL μ°¨μ΄
- λΉλκ΄λ¦¬λꡬ
- λͺ¨λλ‘ μ°μ°
- νλ‘μΈμ€
- Spring Security λ²μ λ¬Έμ
- www.google.comο»Ώ κ²μνλ©΄ μΌμ΄λλ μΌ
- OOPμ νΉμ§
- PCB
- build.gradle μ€μ μ€λ₯
- κΈ°μ¬λ¨μμ 무기 μ κ³±κ·Ό
- μ κ·ν μ₯λ¨μ
- μ€νλ§ λΆνΈμ AWSλ‘ νΌμ ꡬννλ μΉ μλΉμ€
- μκ³ λ¦¬μ¦ 1000000007 λλκΈ°
- MySQL LEFT()
- commit message convention
- MySQL RIGHT()
- DDL DML DCL μ°¨μ΄
- Spring Security 5
- java λκΈ°ν
Archives
- Today
- Total
BUILD_SSO
[Database/λ°μ΄ν°λ² μ΄μ€] μ κ·ν Normalization λ³Έλ¬Έ
ππ»μ κ·νλ μ΄λ€ λ°°κ²½μμ μ겨λ¬λκ°?
- ν 릴λ μ΄μ μ μ¬λ¬ μν°ν°μ μμ±μ νΌν©νλ©΄ μ λ³΄κ° μ€λ³΅ μ μ₯λμ΄ μ μ₯곡κ°μ λλΉνκ² λλ©° μ€λ³΅λ μ λ³΄λ‘ μΈν΄ 'μ΄μ νμ'μ΄ λ°μνκ² λλλ°, μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ μ κ·ν κ³Όμ μ΄ μ겨λ¬λ€.
ππ»μ κ·ν normalizationμ λν΄ μ€λͺ ν΄μ£ΌμΈμ
- μ κ·νλ, νλμ 릴λ μ΄μ μ νλμ μλ―Έλ§ κ°λλ‘ λ¦΄λ μ΄μ μ λΆλ¦¬νλ κ³Όμ μ λ»ν©λλ€.
- λ°μ΄ν°μ μΌκ΄μ±, μ΅μνμ λ°μ΄ν° μ€λ³΅, μ΅λνμ λ°μ΄ν° μ μ°μ±μ μν λ°©λ²μ λλ€.
ππ»μ κ·νμ μ₯λ¨μ μ μ€λͺ ν΄μ£ΌμΈμ
μ₯μ
- λ°μ΄ν°λ² μ΄μ€ λ³κ²½μ μ΄μνμμ΄ λ°μνλ λ¬Έμ μ μ ν΄κ²°ν μ μλ€.
- λ°μ΄ν°λ² μ΄μ€ ꡬ쑰 νμ₯μ μ κ·νλ λ°μ΄ν°λ² μ΄μ€λ κ·Έ ꡬ쑰λ₯Ό λ³κ²½νμ§ μμλ λκ±°λ μΌλΆλ§ λ³κ²½νλ©΄ λλ€.
λ¨μ
- 릴λ μ΄μ
λΆν΄λ‘ μΈν΄ 릴λ μ΄μ
κ°μ μ°μ°(joinμ°μ°)μ΄ λ§μμ§λ€.
β‘ μ΄λ‘μΈν΄ μ§μμ λν μλ΅μκ°μ΄ μ€λ걸릴 μ μλ€.
+ μ κ·νλ₯Ό μννλ€λ κ²μ μ΄μνμμ μ κ±°νλ κ²μ΄λ€. λ°μ΄ν°μ μ€λ³΅ μμ±μ μ κ±°νκ³ κ²°μ μμ μν΄ λμΌν μλ―Έμ μΌλ° μμ±μ΄ νλμ ν μ΄λΈλ‘ μ§μ½λλ―λ‘ ν ν μ΄λΈμ λ°μ΄ν° μ©λμ΄ μ΅μνλλ ν¨κ³Όκ° μλ€. λ°λΌμ μ κ·νλ ν μ΄λΈμ λ°μ΄ν°λ₯Ό μ²λ¦¬ν λ μλκ° λΉ¨λΌμ§ μλ μκ³ λλ €μ§ μλ μλ νΉμ±μ΄ μλ€.
ππ»μ΄μνμ Anomalyκ³Ό μ’ λ₯, νΉμ±μ λν΄ μ€λͺ ν΄μ£ΌμΈμ
- μ΄μνμμ΄λ, ν
μ΄λΈμ μ€κ³ν λ μλͺ» μ€κ³νμ¬ λ°μ΄ν°λ₯Ό μ½μ
μμ μμ ν λ μκΈ°λ λ
Όλ¦¬μ μ€λ₯μ
λλ€.
→ μ΄λ¬ν μ΄μ νμμ μλ°©νκ³ ν¨κ³Όμ μΈ μ°μ°μ νκΈ° μν΄ λ°μ΄ν° μ κ·νλ₯Ό ν©λλ€.
μ½μ μ΄μ
- μλ£λ₯Ό μ½μ ν λ νΉμ μμ±μ ν΄λΉνλ κ°μ΄ μμ΄ NULLμ μ λ ₯ν΄μΌ νλ νμ
κ°±μ μ΄μ
- μ€λ³΅λ λ°μ΄ν°μ€ μΌλΆλ§ κ°±μ λμ΄ λ°μ΄ν° λͺ¨μμ΄ λ°μνλ νμ
μμ μ΄μ
- μ΄λ€ μ 보λ₯Ό μμ νλ©΄ μλνμ§ μμ λ€λ₯Έ λ°μ΄ν°κΉμ§ μμ λλ νμ
ππ»‘λμ' 릴λ μ΄μ
μ μ΄λ»κ² νμ
νλκ°?
- μ κ·νλ λΆλ§μ‘±μ€λ¬μ΄ λμ 릴λ μ΄μ
μ μ νΈλ¦¬λ·°νΈλ€μ λλμ΄μ μ’μ μμ 릴λ μ΄μ
μΌλ‘ λΆν΄νλ μμ
μ λ§νλλ°, λμ 릴λ μ΄μ
μ μν°ν°λ₯Ό ꡬμ±νκ³ μλ μ νΈλ¦¬λ·°νΈ κ°μ ν¨μμ μ’
μμ±(Functional Dependency)μΌλ‘ νλ¨νλ€.
νλ¨λ ν¨μμ μ’ μμ±μ μ’μ 릴λ μ΄μ μ€κ³μ μ νμ κΈ°μ€μΌλ‘ μ¬μ©λλ€. μ¦, κ°κ°μ μ κ·νλ§λ€ μ΄λ ν ν¨μμ μ’ μμ±μ λ§μ‘±νλ μ§μ λ°λΌ μ κ·νμ΄ μ μλκ³ , κ·Έ μ κ·νμ λ§μ‘±νμ§ λͺ»νλ μ κ·νμ λμ 릴λ μ΄μ μΌλ‘ νμ νλ€.
ππ»ν¨μμ μ’
μμ±μ΄λ 무μμΈκ°?
- μ κ·νλ₯Ό μννκΈ° μν΄μλ μμ±λ€ κ°μ κ΄κ³μ±μ νμ
ν΄μΌ νλλ°, μ΄ μμ±λ€κ°μ κ΄λ ¨μ±μ ν¨μμ μ’
μμ±μ΄λΌκ³ νλ€.
μΌλ°μ μΌλ‘ νλμ 릴λ μ΄μ μλ νλμ ν¨μμ μ’ μμ±λ§μ΄ μ‘΄μ¬νλλ‘ μ κ·νλ₯Ό νκ²λλ€.
ex) aβ‘b: aλ κ²°μ μ bλ μ’ μμ - λΆλΆ ν¨μ μ’ μ, μμ ν¨μ μ’ μ, μ΄νμ ν¨μ μ’ μμ΄ μλ€.
ππ»μ κ·ν μ’ λ₯μ μμ
- μ 1μ κ·ν: 릴λ μ΄μ μ μν λͺ¨λ μμ±μ λλ©μΈμ΄ μμκ°(automic value: νλμ κ°)μ κ°μ§λλ‘ λΆν΄νλ€.
- μ 2μ κ·ν: μ 1μ κ·νμ λ§μ‘±νκ³ , κΈ°λ³Έν€κ° μλ μμ±μ΄ κΈ°λ³Έν€μ μμ ν¨μμ’ μλλλ‘ λΆν΄νλ€.(λΆλΆν¨μμ’ μμ κ±°)
- μ 3μ κ·ν: μ 2μ κ·νμ λ§μ‘±νκ³ , μ΄νμ ν¨μμ’ μμ μμ λλ‘ λΆν΄νλ€.
- BCNF μ κ·ν: μ 3μ κ·νμ λ§μ‘±νκ³ , κ²°μ μκ° ν보ν€κ° λλλ‘ λΆν΄νλ€.
ππ»μμ κ·νλ₯Ό νλ μ΄μ μ λν΄ μλλλ‘ μ€λͺ ν΄μ£ΌμΈμ.
- μ κ·νλ₯Ό κ±°μΉλ©΄ 릴λ μ΄μ
κ°μ μ°μ°(JOIN μ°μ°)μ΄ λ§μμ§λλ°, μ΄λ‘μΈν΄ μ±λ₯μ΄ μ νλ μ°λ €κ° μμ΅λλ€.
μ΄λ κ² μ겨λ μ±λ₯ λ¬Έμ κ° μλ(μ½κΈ°μμ μ΄ λ§μ΄ νμν) DBμ μ λ°μ μΈ μ±λ₯μ ν₯μμν€κΈ° μν΄ λ°μ κ·νλ₯Ό ν©λλ€.
μ¦, μ κ·νλ μͺΌκ°κ³ μμ κ·νλ ν©μΉλ κ²μ΄λ€.
'Tech Interview' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] μλ° ν ν¬ μΈν°λ·° part 1 (0) | 2023.05.17 |
---|---|
[Database/λ°μ΄ν°λ² μ΄μ€] μΈλ±μ€ Index (0) | 2023.05.03 |
[Database/λ°μ΄ν°λ² μ΄μ€] DB Query & JOIN (0) | 2023.05.03 |
[Database/λ°μ΄ν°λ² μ΄μ€] ν€ (0) | 2023.05.03 |
[Database/λ°μ΄ν°λ² μ΄μ€] λ°μ΄ν° λ² μ΄μ€ μ’ λ₯μ νΉμ§ (0) | 2023.05.02 |
Comments