π»
[SQLD] Chapter 2. λ°μ΄ν° λͺ¨λΈκ³Ό μ±λ₯ λ³Έλ¬Έ
- λ°μ΄ν°λ?
μ»΄ν¨ν°κ° μ²λ¦¬ ν μ μλ λ¬Έμ, μ«μ, μ리, κ·Έλ¦Ό λ°μμ ννλ‘ λ μ 보λ₯Ό Data λΌ νλ€.
- μ λ°μ΄ν° λͺ¨λΈλ§μ ν κΉ?
νμ€μΈκ³ -> μΆμν, λ¨μν, λͺ νν -> μ€κ³λλ₯Ό ν΅ν μμ€ν μ€κ³
μ¦, λ°μ΄ν° λͺ¨λΈλ§μ΄λ κ°λ νλ μλΉμ€λ₯Ό 물리μ μΌλ‘ ꡬννμ¬ μμ€ν ν νλ κ²
- λͺ¨λΈλ§μ 3κ°μ§ κ΄μ
- λ°μ΄ν° λͺ¨λΈλ§μ 3λ¨κ³ νλ‘μΈμ€
κ°λ μ λ°μ΄ν° λͺ¨λΈλ§ -> λ Όλ¦¬μ λ°μ΄ν° λͺ¨λΈλ§ -> 물리μ λ°μ΄ν° λͺ¨λΈλ§
- κ°λ μ λ°μ΄ν° λͺ¨λΈλ§ : νμ€μΈκ³
- λ
Όλ¦¬μ λ°μ΄ν° λͺ¨λΈλ§ : λΉμ§λμ€ μꡬμ λ§μΆ° λ
Όλ¦¬μ μΈ κ΅¬μ‘°μ κ·μΉμ λͺ
ννκ² νννλ κ³Όμ . μν°ν°, μμ±, κ΄κ³λ₯Ό μ μνλ κ³Όμ .
- μν°ν° : μ 무μ νμνκ³ μ μ©ν μ 보λ₯Ό μ μ₯νκ³ κ΄λ¦¬νκΈ° μν 'μ§ν©' μ μΈ κ². μ€μ²΄, κ°μ²΄
- κ΄κ³ : μν°ν°μ μν°ν° κ° μ°κ΄μ±μ νν
- μμ± : μν°ν°μ μ μ₯λλ κ°μ²΄ μ§ν©μ νΉμ±μ μ€λͺ νλ νλͺ©. μΈμ€ν΄μ€μ ꡬμ±μμ
- 물리μ λ°μ΄ν° λͺ¨λΈλ§ : 물리μ μΌλ‘ λ Όλ¦¬μ λ°μ΄ν° λͺ¨λΈμ νννλ κ³Όμ μΌλ‘ DBMNμ νΉμ§μ λ°μνλ μ€κ³κ° νμνλ€. Table, Column λ±μ μ μνλ κ³Όμ μ΄λ€.
- μ±λ₯ λ°μ΄ν° λͺ¨λΈλ§μ΄λ ?
: λ°μ΄ν°λ² μ΄μ€ μ±λ₯ν₯μμ λͺ©μ μΌλ‘ μ€κ³λ¨κ³μ λ°μ΄ν° λͺ¨λΈλ§ λλΆν° μ±λ₯κ³Ό κ΄λ ¨λ μ¬νμ΄ λ°μ΄ν° λͺ¨λΈλ§μ λ°μλ μ μλλ‘ νλ κ²μ΄λ€.
- μ±λ₯μ΄ μ νλλ λ°μ΄ν° λͺ¨λΈμ 3κ°μ§ κ²½μ°
- λ°μ΄ν° λͺ¨λΈ ꡬ쑰μ μν΄ μ±λ₯ μ ν
- λ°μ΄ν°κ° λμ©λμ΄ λ¨μΌλ‘ μΈν΄ λΆκ°νΌνκ² μ±λ₯ μ ν
- μΈλ±μ€ νΉμ±μ μΆ©λΆν κ³ λ €νμ§ μκ³ μΈλ±μ€λ₯Ό μμ±ν¨μΌλ‘ μΈν΄ μ±λ₯ μ ν
- μ±λ₯ λ°μ΄ν° λͺ¨λΈλ§ μνμμ
λΆμ/μ€κ³ λ¨κ³μμ μννλ κ²μ΄ μ±λ₯μ νμ λ°λ₯Έ μ¬μ 무(Rework) λΉμ©μ μ΅μν ν μ μλ€.
- μ±λ₯ λ°μ΄ν° λͺ¨λΈλ§ κ³ λ €μ¬ν
- λ°μ΄ν° λͺ¨λΈλ§μ ν λ μ κ·νλ₯Ό μ ννκ² μννλ€.
- λ°μ΄ν°λ² μ΄μ€ μ©λμ°μ μ μννλ€.
- λ°μ΄ν°λ² μ΄μ€μ λ°μλλ νΈλμμ μ μ νμ νμ νλ€.
- μ©λκ³Ό νΈλμμ μ μ νμ λ°λΌ λ°μ κ·νλ₯Ό μννλ€.
- μ΄λ ₯λͺ¨λΈμ μ‘°μ , PK/FKμ μ‘°μ , μνΌνμ /μλΈνμ μ‘°μ λ±μ μννλ€.
- μ±λ₯κ΄μ μμ λ°μ΄ν° λͺ¨λΈμ κ²μ¦νλ€.
- μ κ·νλ ?
: λ€μν μ νμ κ²μ¬λ₯Ό ν΅ν΄ λ°μ΄ν° λͺ¨λΈμ μ’λ ꡬ쑰ννκ³ κ°μ μμΌ λκ°λ μ μ°¨μ κ΄λ ¨ν μ΄λ‘ μ΄λ€.
=> λ°μ΄ν°μ λν μ€λ³΅μ± μ κ±°, λ°μ΄ν°κ° κ΄μ¬μ¬λ³ μ²λ¦¬λ‘ μ±λ₯ ν₯μ
μ κ·νλ₯Ό μννλ€λ κ²μ λ°μ΄ν°λ₯Ό κ²°μ νλ κ²°μ μμ μν΄ ν¨μμ μ’ μμ κ°μ§κ³ μλ μΌλ°μμ±μ μμ‘΄μλ‘ νμ¬ μ λ ₯/μμ /μμ μ΄μ μ κ±°νλ κ²μ΄λ€. λ°μ΄ν°μ μ€λ³΅μμ±μ μ κ±°νκ³ κ²°μ μμ μν΄ λμΌν μλ―Έμ μΌλ°μμ±μ΄ νλμ ν μ΄λΈλ‘ μ§μ½λλ―λ‘ ν ν μ΄λΈμ λ°μ΄ν° μ©λμ΄ μ΅μνλλ ν¨κ³Όκ° μλ€. λ°λΌμ μ κ·νλ ν μ΄λΈμ λ°μ΄ν° μ²λ¦¬ μμ μλκ° λΉ¨λΌμ§ μλ μκ³ λλ €μ§ μλ μλ€.
=> μ‘°νμ±λ₯μ μ²λ¦¬μ‘°κ±΄μ λ°λΌ μ±λ₯μ΄ ν₯μ λλ μ νλ μ μκ³ , μ λ ₯/μμ /μμ μ±λ₯μ ν₯μλλ€.
- μ κ·ν
- 1μ°¨ μ κ·ν
μμ )
1μ°¨ μ κ·ν λμ
μμ± μ± μ΄λ¦κ³Ό μ± κ°κ²©, μ μ, μ μλμ΄, μ μμ± μ, μ€κ³ κ°, μ κ³ λ μμ 볡μμ μμ±κ°μ κ°λ λ‘μ°κ° μ‘΄μ¬νλ€.
νλμ μμ¬κ° μ¬λ¬ κ°μ μ± μ μμ νλ©΄μ λ°μλλ€. μμ¬μ 보μ μ± μ λΆλ¦¬ν΄μΌνλ€.
1μ°¨ μ κ·ν μλ£
- 2μ°¨ μ κ·ν
μμ )
2μ°¨ μ κ·ν λμ
λ³΅ν© μλ³μμΈ μμ¬μ£ΌμΈ + μμ¬λͺ μμ μ± κΆμ, μΉμ λ, λΆλ₯νΉμ§μ μμ¬λͺ μ μ’ μλλ μμ±μ λ³΅ν© μλ³μμ μΌλΆμλ§ μ’ μλλ μμ±μ λ³λμ μν°ν°λ‘ λΆλ¦¬ν¨
2μ°¨ μ κ·ν μλ£
- 3μ°¨ μ κ·ν
μμ )
3μ°¨ μ κ·ν λμ
3μ°¨ μ κ·ν μλ£
- λ°μ κ·νλ?
: μ κ·νλ μν°ν°, μμ±, κ΄κ³μ λν΄ μμ€ν μ μ±λ₯ν₯μ, κ°λ°κ³Ό μ΄μμ λ¨μνλ₯Ό μν΄ μ€λ³΅, ν΅ν©, λΆλ¦¬ λ±μ μννλ λ°μ΄ν° λͺ¨λΈλ§μ κΈ°λ²μ μλ―Ένλ€.
- λ°μ΄ν°λ₯Ό μ€λ³΅νμ¬ μ±λ₯μ ν₯μμν€κΈ° μν κΈ°λ²
- μ κ·νλ λ°μ΄ν° λͺ¨λΈμμ μ€λ³΅, ν΅ν©, λΆλ¦¬ λ±μ μννλ λͺ¨λ κ³Όμ μ μλ―Έ
- λ°μ κ·νλ₯Ό νλ μ΄μ ?
: λ°μ΄ν° 무결μ±μ΄ κΉ¨μ§ μ μλ μνμ λ¬΄λ¦ μ°κ³ λ°μ΄ν°λ₯Ό μ€λ³΅νμ¬ λ°μ κ·νλ₯Ό μ μ©νλ μ΄μ λ
- λ°μ΄ν°λ₯Ό μ‘°νν λ λμ€ν¬ I/Oλμ΄ λ§μμ μ±λ₯μ΄ μ νλ λ
- κ²½λ‘κ° λ무 λ©μ΄ μ‘°μΈμΌλ‘ μΈν μ±λ₯μ νκ° μμλ λ
- μΉΌλΌμ κ³μ°νμ¬ μ½μ λ μ±λ₯μ΄ μ νλ κ²μ΄ μμλ λ
λ°μ κ·νλ₯Ό μννλ©΄ λ°μ΄ν° μ‘°νμ μ±λ₯μ ν₯μνλ€.
κΈ°λ³Έμ μΌλ‘ μ κ·νλ₯Ό μ¬μ©νμ§λ§, μ κ·νλ§μ μννλ©΄ μν°ν°μ κ°―μκ° μ¦κ°νκ³ κ΄κ³κ° λ§μμ Έ μΌλΆ μ¬λ¬ κ°μ μ‘°μΈμ΄ κ±Έλ €μΌλ§ λ°μ΄ν°λ₯Ό κ°μ Έμ€λ κ²½μ°κ° μλ€.(λΉμλ³μ κ΄κ³μΌ λ) μ΄λ¬ν κ²½μ° μ‘°νμ λν μ²λ¦¬μ±λ₯μ΄ μ€μνλ€κ³ νλ¨λ λ λΆλΆμ μΌλ‘ λ°μ κ·νλ₯Ό κ³ λ €νκ² λλ κ²μ΄λ€.
- λ°μ κ·ν μ μ°¨
- λ°μ κ·νμ κΈ°λ²
ν μ΄λΈ λ°μ κ·ν, μΉΌλΌ λ°μ κ·ν, κ΄κ³ λ°μ κ·νκ° μλ€.
- λλ λ°μ΄ν°λ°μμ λ°λ₯Έ ν μ΄λΈ λΆν
- ν μ΄λΈ λΆν μ€κ³λ₯Ό ν΅ν μ±λ₯ μ νμ μλ°©
- μνλΆν : μ»¬λΌ λ¨μλ‘ λΆν I/O κ²½κ°
- μμ§λΆν : λ‘μ° λ¨μλ‘ λΆν I/O κ²½κ°
- μ±λ₯ μ νμ μμΈ
- νλμ ν μ΄λΈμ λ°μ΄ν° λλμ§μ€ : ν ν μ΄λΈμ λ°μ΄ν°κ° λλμΌλ‘ μ§μ€λ λ ν μ΄λΈ κ΅¬μ‘°κ° λ무 μ»€μ Έμ ν¨μ¨μ±μ΄ λ¨μ΄μ Έ λ°μ΄ν°λ₯Ό μ²λ¦¬ν λ λμ€ν¬ I/Oλ₯Ό λ§μ΄ λ°μμν¨λ€.
- νλμ ν μ΄λΈμ μ¬λ¬ κ°μ μ»¬λΌ μ‘΄μ¬ : λμ€ν¬μ μ μ λμ΄ λμμ§κ³ λ°μ΄ν°λ₯Ό μ½λ I/O μμ΄ λ§μμ Έμ μ±λ₯μ΄ μ νλλ€.
- λλμ λ°μ΄ν°κ° μ²λ¦¬λλ ν μ΄λΈμ κ²½μ° : SQL λ¬Έμ₯μμ λ°μ΄ν°λ₯Ό μ²λ¦¬νκΈ° μν I/O μμ΄ μ¦κ°νλ€. μΈλ±μ€λ₯Ό μ μ νκ² κ΅¬μ±νμ¬ μ΄μ©νλ©΄ μ€μΌ μ μλ€.
- ν΄κ²°μ± : νν°μ λ(Range Partition, List Partition, Hash Partition), PKμ μν λΆν
- λλμ λ°μ΄ν°κ° νλμ ν μ΄λΈμ μ‘΄μ¬ν λ : μΈλ±μ€λ₯Ό μμ±ν λ μΈλ±μ€μ ν¬κΈ°(μ©λ)κ° μ»€μ§κ² λκ³ κ·Έλ κ² λλ©΄ μΈλ±μ€λ₯Ό μ°Ύμκ°λ λ¨κ³κ° κΉμ΄μ§κ² λμ΄ μ‘°νμ μ±λ₯μλ μν₯μ λ―ΈμΉκ² λλ€.
- 컬λΌμ΄ λ§μμ§λ κ²½μ° : 물리μ μΈ λμ€ν¬μ μ¬λ¬ λΈλ‘μ λ°μ΄ν°κ° μ μ₯λκ² λλ€.
- μνΌ/μλΈ νμ λ°μ΄ν° λͺ¨λΈμ λ³ν κΈ°μ
- κ°λ³λ‘ λ°μλλ νΈλμμ μ λν΄μλ κ°λ³ ν μ΄λΈλ‘ ꡬμ±
- μνΌνμ + μλΈνμ μ λν΄ λ°μλλ νΈλμμ μ λν΄μλ μνΌνμ + μλΈνμ ν μ΄λΈλ‘ ꡬμ±
- μ 체λ₯Ό νλλ‘ λ¬Άμ΄ νΈλμμ μ΄ λ°μν λλ νλμ ν μ΄λΈλ‘ ꡬμ±
- ν μ΄λΈμ λν μνλΆν /μμ§λΆν μ μ μ°¨
- λ°μ΄ν° λͺ¨λΈλ§μ μμ±νλ€.
- λ°μ΄ν°λ² μ΄μ€ μ©λμ μ μ νλ€. -> μ»¬λΌ μκ° λ§μμ§?
- λλ λ°μ΄ν°κ° μ²λ¦¬λλ ν μ΄λΈμ λν΄μ νΈλμμ μ²λ¦¬ ν¨ν΄μ λΆμνλ€.
- μ»¬λΌ λ¨μλ‘ μ§μ€νλ μ²λ¦¬κ° λ°μνλμ§, λ‘μ° λ¨μλ‘ μ§μ€νλ μ²λ¦¬κ° λ°μνλμ§ λΆμνμ¬ μ§μ€νλ λ¨μλ‘ ν μ΄λΈμ λΆλ¦¬νλ κ²μ κ²ν νλ€. -> μ»¬λΌ μκ° λ§μΌλ©΄? 1:1λ‘ λΆλ¦¬ κ°λ₯ν μ§ , μ»¬λΌ μλ μ μΌλ λ°μ΄ν° μμ΄ λ§λ€λ©΄? νν°μ λμ κ³ λ €
- λΆμ° λ°μ΄ν°λ² μ΄μ€λ?
: λ°μ΄ν°λ² μ΄μ€λ₯Ό μ°κ²°νλ λΉ λ₯Έ λ€νΈμν¬ νκ²½μ μ΄μ©νμ¬ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ¬λ¬ μ§μ μ¬λ¬ λ Έλλ‘ μμΉμμΌ μ¬μ©μ±/μ±λ₯ λ±μ κ·Ήλν μν¨ λ°μ΄ν°λ² μ΄μ€λ₯Ό λ§νλ€.
μ¦, λΆμ°λμ΄μλ λ°μ΄ν°λ² μ΄μ€λ₯Ό νλμ κ°μ μμ€ν μΌλ‘ μ¬μ©ν μ μλλ‘ ν λ°μ΄ν°λ² μ΄μ€
- λΆμ° λ°μ΄ν°λ² μ΄μ€μ ν¬λͺ μ±
- λΆν ν¬λͺ μ±(λ¨νΈν) : νλμ λ Όλ¦¬μ Relationμ΄ μ¬λ¬ λ¨νΈμΌλ‘ λΆν λμ΄ κ° λ¨νΈμ μ¬λ³Έμ΄ μ¬λ¬ κ³³μ μ μ₯νλ€.
- μμΉ ν¬λͺ μ± : μ¬μ©νλ €λ λ°μ΄ν°μ μ μ₯ μ₯μ λͺ μ λΆνμ. μμΉμ λ³΄κ° System Catalogμ μ μ§λμ΄μΌ νλ€.
- μ§μμ¬μ ν¬λͺ μ± : μ§μDBMSμ 물리μ DBμ¬μ΄μ μ¬μμ 보μ₯.
- μ€λ³΅ ν¬λͺ μ± : DB κ°μ²΄κ° μ¬λ¬ κ³³μ μ€λ³΅ λμ΄ μλμ§ μ νμκ° μλ μ±μ§
- μ₯μ ν¬λͺ μ± : ꡬμ±μμ(DBMS, Computer)μ μ₯μ μ 무κ΄ν νΈλμμ μ μμμ± μ μ§
- λ³ν ν¬λͺ μ± : λ€μ νΈλμμ μ΄ λμ μνμ κ²°κ³Όμ μΌκ΄μ±μ μ μ§. νμμ€ν¬ν, λΆμ° 2λ¨κ³ Lockingμ μ΄μ©ν΄ ꡬν
- λΆμ° λ°μ΄ν°λ² μ΄μ€μ μ₯λ¨μ
- λΆμ° λ°μ΄ν°λ² μ΄μ€μ μ μ© κΈ°λ²
- ν
μ΄λΈ μμΉ λΆμ°
- ν μ΄λΈ ꡬ쑰λ λ³νμ§ μλλ€.
- ν μ΄λΈμ΄ λ€λ₯Έ λ°μ΄ν°λ² μ΄μ€μ μ€λ³΅ μμ±λμ§ μλλ€.
- μ 보λ₯Ό μ΄μ©νλ ννκ° κ° μμΉλ³λ‘ μ°¨μ΄κ° μμ κ²½μ° μ΄μ©νλ€.
- ν μ΄λΈμ μμΉλ₯Ό νμ ν μ μλ λμνλ μμΉλ³ λ°μ΄ν°λ² μ΄μ€ λ¬Έμκ° νμνλ€.
- ν
μ΄λΈ λΆν λΆμ°
- μμΉλ§ λ€λ₯Έ κ³³μ λλ κ²μ΄ μλλΌ κ°κ°μ ν μ΄λΈμ μͺΌκ°μ΄ λΆμ°
- μνλΆν (Rowλ¨μλ‘ λΆλ¦¬)
- μμ§λΆν (Columnλ¨μλ‘ λΆλ¦¬)
- ν
μ΄λΈ 볡μ λΆμ°
- λμΌν ν μ΄λΈμ λ€λ₯Έ μ§μμ΄λ μλ²μμ λμμ μμ±νμ¬ κ΄λ¦¬
- νλ‘μ νΈμμ λ§μ΄ μ¬μ©νλ λ°μ΄ν°λ² μ΄μ€ λΆμ°κΈ°λ²
- λΆλΆλ³΅μ : ν΅ν©λ ν μ΄λΈμ νκ΅°λ°(λ³Έμ¬)μ κ°μ§κ³ μμΌλ©΄μλ κ° μ§μ¬λ³λ‘λ μ§μ¬μ ν΄λΉλ Rowλ₯Ό κ°μ§κ³ μλ νν
- κ΄μ볡μ : ν΅ν©λ ν μ΄λΈμ νκ΅°λ°(λ³Έμ¬)μ κ°μ§κ³ μμΌλ©΄μλ κ° μ§μ¬μλ λ³Έμ¬μ λμΌν λ°μ΄ν°λ₯Ό κ°μ§κ³ μλ νν
- ν
μ΄λΈ μμ½ λΆμ°
- μ§μ/μλ² κ°μ λ°μ΄ν°κ° λΉμ·νμ§λ§ μλ‘ λ€λ₯Έ μ νμΌλ‘ μ‘΄μ¬νλ κ²½μ°
- λΆμμμ½ : λμΌν ν μ΄λΈ ꡬ쑰λ₯Ό κ°μ§κ³ μμΌλ©΄μ λΆμ°λμ΄ μλ λμΌν λ΄μ©μ λ°μ΄ν°λ₯Ό μ΄μ©νμ¬ ν΅ν₯λ λ°μ΄ν°λ₯Ό μ°μΆνλ λ°©μ
- ν΅ν©μμ½ : κ° μ§μ¬λ³λ‘ μ‘΄μ¬νλ λ€λ₯Έ λ΄μ©μ μ 보λ₯Ό λ³Έμ¬μ ν΅ν©νμ¬ λ€μ μ 체μ λν΄μ μμ½μ 보λ₯Ό μ°μΆ
- λΆμ° λ°μ΄ν°λ² μ΄μ€λ₯Ό μ μ©νμ¬ μ±λ₯μ΄ ν₯μλ μ¬λ‘
- μ±λ₯μ΄ μ€μν μ¬μ΄νΈμ μ μ©νλ€.
- 곡ν΅μ½λ, κΈ°μ€μ 보, λ§μ€ν° λ°μ΄ν° λ±μ λν΄ λΆμ°νκ²½μ ꡬμ±νλ©΄ μ±λ₯μ΄ μ’μμ§λ€.
- νΉμ μλ²μ λΆνκ° μ§μ€μ΄ λ λ λΆνλ₯Ό λΆμ°ν λλ μ’λ€.
- λ°±μ μ¬μ΄νΈλ₯Ό ꡬμ±ν λ κ°λ¨νκ² λΆμ°κΈ°λ₯μ μ μ©νμ¬ κ΅¬μ±ν μ μλ€.
'TIL > SQLD' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[SQLD] Chapter 3. SQL κΈ°λ³Έ (0) | 2020.05.02 |
---|---|
[SQLD] Chapter 1. λ°μ΄ν° λͺ¨λΈλ§μ μ΄ν΄ (0) | 2020.04.18 |