π λ°μ΄ν°λ² μ΄μ€ κ΅¬μΆ 2μ₯
β λ°μ΄ν° μ¬μ (System Catalog)
βοΈ μμ€ν λ΄λΆμμ λͺ¨λ λ°μ΄ν° κ°μ²΄μ μ μμ λͺ μΈλ₯Ό κ΄λ¦¬νλ μμ€ν ν μ΄λΈ
• λ©νλ°μ΄ν° (Metadata) μ μ₯μ
• SQLλ‘ λ΄μ© κ²μ κ°λ₯
• μμ€ν μ΄ μλ μμ±/μ μ§ → μΌλ° μ¬μ©μλ μ§μ μμ λΆκ°
• λ°μ΄ν° λλ ν 리 (Data Directory) : λ°μ΄ν° μ¬μ μ μ κ·ΌνκΈ° μν μμΉ μ 보 ν¬ν¨
β μΈλ±μ€ (INDEX)
βοΈ λΉ λ₯Έ μ‘°ν λ° κ²μμ μν λ³λμ μμ λ°μ΄ν° ꡬ쑰
• ν μ΄λΈ μμ μ ν¨κ» μμ λ¨
• μ¬μ©μκ° μ§μ μμ±/μμ κ°λ₯
• CREATE INDEX, DROP INDEX μ¬μ©
• μ’ λ₯ :
- ν΄λ¬μ€ν° (Clustered)
- λν΄λ¬μ€ν° (Non-clustered)
- νΈλ¦¬ κΈ°λ° / ν¨μ κΈ°λ°
- λΉνΈλ§΅ / λΉνΈλ§΅ μ‘°μΈ
- λλ©μΈ μΈλ±μ€
β νΈλμμ (Transaction)
βοΈ λ°μ΄ν°λ² μ΄μ€ μνλ₯Ό λ³νμν€λ λ Όλ¦¬μ μμ λ¨μ
• COMMIT : μ μ μ’ λ£ ν λ³κ²½ λ΄μ© μꡬ μ μ₯
• ROLLBACK : μ€λ₯ λ°μ μ μ΄μ μνλ‘ λ³΅κ΅¬
• Atomicity (μμμ±) : μ λΆ μν λλ μ λΆ λ¬΄μ
• Consistency (μΌκ΄μ±) : μ /ν μν μΌκ΄μ± μ μ§
• Isolation (λ 립μ±) : λ€λ₯Έ νΈλμμ μ κ°μ X
• Durability (μμμ±) : μλ£λ κ²°κ³Όλ μꡬ 보쑴
β λ·° (View)
βοΈ κΈ°λ³Έ ν μ΄λΈμ κΈ°λ°ν κ°μ ν μ΄λΈ (λ Όλ¦¬μ μ‘΄μ¬, μ€μ λ°μ΄ν° X)
• μμ μ κ΄λ ¨ λ·°λ ν¨κ» μμ
• μ₯μ : 보μ/λ°μ΄ν° λ 립μ±/κ΄λ¦¬ μ©μ΄
• λ¨μ : μΈλ±μ€ λΆκ°, ALTER, INSERT, DELETE, UPDATE μ μ½
β λΆμ° λ°μ΄ν°λ² μ΄μ€
βοΈ λ Όλ¦¬μ μΌλ‘λ νλμ§λ§ 물리μ μΌλ‘ μ¬λ¬ μ»΄ν¨ν°μ λΆμ°λ DB
• κ΅¬μ± : λΆμ° μ²λ¦¬κΈ° / DB / ν΅μ λ€νΈμν¬
• ν¬λͺ
μ± μ 곡 :
- μμΉ (Location)
- μ€λ³΅ (Replication)
- λ³ν (Concurrency)
- λΆν (Division)
- μ₯μ (Failure)
→ μ¬μ©μλ DBκ° λΆμ°λμλμ§ μΈμν νμ μμ
β λ‘νΉ λ¨μ (Locking)
βοΈ νΈλμμ κ° λ³ν μ μ΄λ₯Ό μν λ°μ΄ν° μ κΈ κΈ°λ²
• λμ : DB / νμΌ / λ μ½λ
• λ‘νΉ λ¨μκ° μμμλ‘ λ³νμ±↑ / μ€λ²ν€λ↑
• λ³νμ μ΄ κΈ°λ² :
- λ‘νΉ κΈ°λ²
- λκ΄μ κ²μ¦ (Optimistic)
- νμμ€ν¬ν κΈ°λ²
- λ€μ€λ²μ λμμ± μ μ΄ (MVCC)
β SQL (Structured Query Language) λΆλ₯
π‘
1οΈβ£ DDL (Data Definition Language) → λ°μ΄ν° ꡬ쑰 μ μ λ° μμ
• CREATE : ν μ΄λΈ, λ·°, μΈλ±μ€, λλ©μΈ, μ€ν€λ§ μμ±
• ALTER : ν μ΄λΈ ꡬ쑰 λ³κ²½ (μ»¬λΌ μΆκ°, μ΄λ¦ λ³κ²½ λ±)
• DROP : ν μ΄λΈ, λ·°, μΈλ±μ€ λ± μ κ±°
• μ΅μ ν€μλ :
- CASCADE : μ°Έμ‘°νκ³ μλ λͺ¨λ κ°μ²΄λ ν¨κ» μμ
- RESTRICT : λ€λ₯Έ κ°μ²΄κ° μ°Έμ‘° μ€μΌ κ²½μ° μμ μ·¨μ
π‘
2οΈβ£ DML (Data Manipulation Language) → λ°μ΄ν° μ½μ , μμ , μμ , μ‘°ν λ± μ‘°μ
• SELECT : λ°μ΄ν° κ²μ
• INSERT : μλ‘μ΄ νν(ν) μ½μ
• UPDATE : κΈ°μ‘΄ λ°μ΄ν° μμ
• DELETE : νΉμ 쑰건μ λ§λ λ°μ΄ν° μμ
• νΉμ λ¬Έλ² μμ:
- IN / BETWEEN / LIKE / IS NULL / NOT
- ORDER BY : κΈ°λ³Έμ ASC(μ€λ¦μ°¨μ), DESC μ¬μ© μ λ΄λ¦Όμ°¨μ
π‘
3οΈβ£ DCL (Data Control Language) → λ°μ΄ν° μ κ·Ό μ μ΄, 보μ λ° λ³΅κ΅¬ κ΄λ¦¬
• GRANT : μ¬μ©μμκ² κΆν λΆμ¬ → GRANT κΆν ON κ°μ²΄ TO μ¬μ©μ [WITH GRANT OPTION]
• REVOKE : μ¬μ©μ κΆν νμ → REVOKE [GRANT OPTION FOR] κΆν ON κ°μ²΄ FROM μ¬μ©μ
• COMMIT : λͺ¨λ μμ μ μꡬ μ μ₯
• ROLLBACK : μμ μ μ·¨μνκ³ μ΄μ μνλ‘ λ³΅κ΅¬
• SAVEPOINT : λ‘€λ°±ν μ€κ° μ§μ μ§μ
β λ°μ΄ν° ν볡 κΈ°λ²
βοΈ νΈλμμ μ€ν¨/μμ€ν μ₯μ μ λ°μ΄ν° 볡ꡬλ₯Ό μν μ λ΅
• μ¦μ κ°±μ (Immediate Update) → μν μ¦μ DB λ°μ, Undo + Redo νμ
• μ§μ° κ°±μ (Deferred Update) → λ‘κ·Έμ κΈ°λ‘ ν μΌμ μμ λ°μ, Redoλ§ νμ
• κ²μ¬ μμ κΈ°λ² (Checkpoint) → μ€κ° μ μ₯ μ§μ μ€μ , ν΄λΉ μμ λΆν° 볡ꡬ
• κ·Έλ¦Όμ νμ΄μ§ (ShadowPaging) → λ‘κ·Έ λ―Έμ¬μ©, νμ΄μ§ 볡μ¬λ³ΈμΌλ‘ 볡ꡬ
'βοΈ Engineer Information Processing_' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[μ 보 μ²λ¦¬ κΈ°μ¬] μ 4κ³Όλͺ© - νλ‘κ·Έλλ° μΈμ΄ νμ© (0) | 2025.05.16 |
---|---|
[μ 보 μ²λ¦¬ κΈ°μ¬] μ 4κ³Όλͺ© - νλ‘κ·Έλλ° μΈμ΄ νμ© (0) | 2025.05.15 |
[μ 보 μ²λ¦¬ κΈ°μ¬] μ 3κ³Όλͺ© - λ°μ΄ν°λ² μ΄μ€ κ΅¬μΆ (0) | 2025.05.15 |
[μ 보 μ²λ¦¬ κΈ°μ¬] μ 2κ³Όλͺ© - μννΈμ¨μ΄ κ°λ° (0) | 2025.05.15 |
[μ 보 μ²λ¦¬ κΈ°μ¬] μ 2κ³Όλͺ© - μννΈμ¨μ΄ κ°λ° (0) | 2025.05.14 |