νΈλμμ μ΄λ?
λ°μ΄ν°λ² μ΄μ€ μνλ₯Ό λ³νμν€λ νλμ λ Όλ¦¬μ μΈ μμ λ¨μμ΄λ©° λ°λμ λ€κ°μ΄ μνλμ΄μΌλ§ νλ μ°μ° μ§ν©
κ°μ₯ λνμ μΈ μμλ‘ κ³μ’ μ΄μ²΄κ° μλ€.
- A κ³μ’ μμ‘ νμΈ
- A -> Bλ‘ κ³μ’ μ΄μ²΄ (A μμ‘μμ μ΄μ²΄ν κΈμ‘λ§νΌ λΉΌκΈ°)
- B κ³μ’ μμ‘ νμΈ
- B <- Aλ‘ μ κΈ (B κ³μ’μ μ΄μ²΄ν κΈμ‘ λνκΈ°)
μ΄ 4κ°μ§ μμ μ νλλΌλ μ€ν¨μμ΄ μ΄λ€μ ΈμΌλ§ νΈλμμ μ΄ μλ£λ μ μλ€.
**Commit**
- νΈλμμ μμ μ μ±κ³΅μ μΌλ‘ λ§μΉκ³ λ°μ΄ν°λ² μ΄μ€κ° μΌκ΄λ μνμ μλ€λ©΄ μ΄λ₯Ό νΈλμμ κ΄λ¦¬μμκ² μ리λ μμ
**Rollback**
- νΈλμμ μν λμ€ μμ μ€λ₯ λ°μνκ±°λ λ°μ΄ν°λ² μ΄μ€ μΌκ΄μ±μ΄ νκ΄΄λλ©΄ μ±κ³΅ν μμ μ ν¬ν¨ν΄ λͺ¨λ μμ μ μ·¨μνλ€.
νΈλμμ μ μν
- νμ± (Active)
- νΈλμμ μ΄ μ€ν μ€μ μλ μν
- μ€ν¨ (Failed)
- νΈλμμ μ€νμ μ€λ₯κ° λ°μνμ¬ μ€λ¨λ μν
- μ² ν (Aborted)
- νΈλμμ μν μ€ μ€λ₯κ° λ°μνμ¬ Rollback μ°μ°μ μνν μν
- λΆλΆμλ£ (Partially Commited)
- νΈλμμ μ λ§μ§λ§ μ°μ°κΉμ§ μ€ν ν ν Commitμ°μ°μ΄ μ€νλκΈ° μ§μ μν
- μλ£ (Commited)
- νΈλμμ μ΄ μ±κ³΅μ μΌλ‘ μ’ λ£λμ΄ Commitμ°μ°μ΄ μ€νλ μν
νΈλμμ μ μ±μ§
Atomicity(μμμ±)
- νΈλμμ μ°μ°μ λ°μ΄ν°λ² μ΄μ€μ λͺ¨λ λ°μλκ±°λ μ ν λ°μλμ§ μκ±°λ λ μ€ νλμ΄λ€. (All or Nothing)
- νΈλμμ μ°μ°μ μΌλΆκ° μ€λ₯κ° λ°μνλ©΄ μ±κ³΅ν μ°μ°μ ν¬ν¨ν΄ νΈλμμ μ λΆλ₯Ό μ·¨μνλ€.
Consistency(μΌκ΄μ±)
- νΈλμμ
μννκ³ λλ©΄ νλμ `μΌκ΄λ μν`μμ λ€λ₯Έ `μΌκ΄λ μν`λ‘ λ°λμ΄μΌ νλ€.
- μΌκ΄λ μν(Correct State) : λλ©μΈμ μ ν¨λ²μ, λ¬΄κ²°μ± μ μ½μ‘°κ±΄λ±μ μ μ½μ‘°κ±΄μ μλ°°νμ§ μλ μ μμ μΈ νν
- νΈλμμ
μ μννλλΌλ μ€μ λ μ μ½μ‘°κ±΄μ μλ°°νμ§ μλ ννκ° λμ΄μΌ νλ€!
- ex) μμ‘μΌλ‘ μμλ§ κ°λ₯ν μ‘°κ±΄μ΄ μλ€λ©΄ νΈλμμ μ°μ° ν μμκ° λμ€κ² λλ€λ©΄ μΌκ΄μ±μ μλ°°λλ€.
- νΈλμμ μ μΌκ΄μ±μ νΈλμμ μμ μ κ³Ό νμ μνλ§ μ²΄ν¬ν λΏ μ€κ°μ μΌκ΄μ±μ 체ν¬νμ§ μλλ€.
Isolation(λ 립μ±, 격리μ±)
- ν νΈλμμ
μ΄ μ€νλλ λμ μΈλΆμμλ νΈλμμ
μ μ κ·Όν μ μλ€.
- λ€μμ νΈλμμ μ΄ λμμ μνλλλΌλ ν λ²μ νλμ© μνλ κ²κ³Ό λμΌν κ²°κ³Όλ₯Ό λ΄μΌλ§ νλ€.
Durabilitiy(μμμ±, μ§μμ±)
- Commit(νΈλμμ
μλ£)λ νΈλμμ
μ μꡬμ μΌλ‘ 보쑴λμ΄μΌλ§ νλ€.
- ex) Commit λ μμ κ²°κ³Όλ μ μ μ΄ μΌμ΄λλ 보쑴λλ€.
Reference
'πComputer Scienceπ > λ°μ΄ν°λ² μ΄μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
DynamoDBλ₯Ό μ΄ν΄νκ³ μ¬μ©ν΄λ³΄μ (0) | 2022.04.18 |
---|---|
[DB] 1NF, 2NF, 3NF κ°λ¨ μ 리 (0) | 2021.04.04 |
[DB] ν¨μμ μ’ μμ± (Funtional Dependency) (0) | 2021.04.04 |
[DB] λ°μ΄ν°λ² μ΄μ€ μ½μ , κ°±μ , μμ μ΄μ νμ (Anomaly) (0) | 2021.04.04 |