π― λͺ©ν :Β Transactionμ ACID νΉμ±μ μ΄ν΄
π νΈλμμ
(Transaction)
- ν λ¨μλ‘ μ·¨κΈ λλ λͺ¨λ μμ
.
- νΈλμμ
μ μμ
κ²°κ³Όλ μ±κ³΅ λλ μ€ν¨λ§ μλ€.
- μ¬λ¬ μμ
μ΄ μλ νλμ νΈλμμ
μμ νλμ μμ
λ§ μ€ν¨ νλλΌλ ν΄λΉ νΈλμμ
μ μ€ν¨λ€.
- μλ₯Ό λ€μ΄ κ³μ’ Aμμ κ³μ’ Bλ‘ μ΄μ²΄λ₯Ό νλ κ³Όμ μ΄ μλ€κ³ κ°μ νλ©΄,
Aμμ μΈμΆλμ΄ Bλ‘ μ
κΈλλ μμ
λ€μ΄ νλμ νΈλμμ
μΌλ‘ λ³Όμ μκ³ μΈμΆλ§ λκ³ Bλ‘ μ
κΈ λμ§ μμλ€λ©΄,Β μ΄ νΈλμμ
μ μ€ν¨ν κ²μΌλ‘ 보면 λλ€.
- μμμμ λ§μ½, μ€μ λ‘ Aμμ μΈμΆλ§ λκ³ Bλ‘ μ
κΈμ΄ λμ§ μμ μ±λ‘ νΈλμμ
μ΄ μ’
λ£λμ΄ λ²λ Έλ€λ©΄, Aμμμ μΈμΆ μμ
μ μλ―Έ μλ μμ
μ΄ λλ©°, νΈλμμ
κ΄μ μμ μμ£Ό μννκ³ μμ μ±μ΄ 보μ₯λμ§ λͺ»ν μμ
μ΄ λλ€.
- μ΄λ¬ν μμ μ±μ 보μ₯νκΈ° μν΄ νμν νΉμ±μ ACIDλΌκ³ νλ€.
π ACID
νλμ νΈλμμ
μ μμ μ±μ 보μ₯νκΈ° μν΄ νμν νΉμ±μ ACIDλΌκ³ νλ€.
νλμ νΈλμμ
μ΄ μμ μ±μ 보μ₯νκΈ° μν΄μλ,Β νΈλμμ
μμ λͺ¨λ μμ
μ΄ μ±κ³΅νλ©΄ νΈλμμ
μ μ μμ μΌλ‘ μ±κ³΅ν κ²μ΄λ©°, νλμ μμ
μ΄λΌλ μ€ν¨νλ©΄ λͺ¨λ μμ
μ μ€ν¨λ κ²κ³Ό κ°μμΌνκ³ , λ€λ₯Έ νΈλμμ
μ μν₯μ΄ μ ν μμ΄μΌ λλ©°, μ€ν¨μ μ±κ³΅ν νΈλμμ
μ κΈ°λ‘μ μꡬμ μΌλ‘ λ¨μμΌνλ€.
μ λ¬Έλ¨μμ ACIDμ λͺ¨λ νΉμ±μ μ€λͺ
νκ³ μλ€.
π Atomicty(μμμ±)
- μ μμλ₯Ό λ€μ΄ λΉμ νλ©΄, κ³μ’ Aμμ μΈμΆλ κΈμ‘μ΄ κ³μ’ Bμ λ°μ λμ΄μΌλ§ νλμ νΈλμμ
μ΄ μλ£λ κ²μΌλ‘ λ³Όμμλ€.
- Aμμ μΈμΆ μμ
λ§ μνλκ³ Bμμ μ
κΈμ΄ λλ μμ
μ΄ μ΄λ£¨μ΄ μ§μ§ μμλ€λ©΄, μ΄ μΈμΆκ³Ό μ
κΈλλ νλμ νΈλμμ
μ μ€ν¨ νκ²μΌλ‘ κ°μ£Όλμ΄ νΈλμμ
μ΄ μ€ν λκΈ° μ κ³μ’ A,Bμ λ°μ΄ν°λ₯Ό λ³΄νΈ ν΄μΌ νλ€.
- νλμ νΈλμμ
μμ μ¬λ¬κ°μ μμ
μ€ νλλ§ μ€ν¨ν΄λ ν΄λΉ νΈλμμ
μμ μ 체 μμ
μ μ€ν¨νκ²κ³Ό κ°μ΄ κ°μ£Ό ν΄μΌ νλκ²μ μμμ±μ΄λΌ νλ€.
π Consistency(μΌκ΄μ±)
- νλμ νΈλμμ
μ΄ μ€νλ μ΄μ κ³Ό μ΄ν λ°μ΄ν°μ μνλ μ ν¨ν΄μΌνλ€.
- μ¦, νΈλμμ
μ΄ μ€νλκΈ° μ΄μ μ λ°μ΄ν°κ° μ΄λ ν μ μ½μ΄λ κ·μΉμ λ§μ‘±νκ³ μλ μνμλ€λ©΄, νΈλμμ
μ΄ μ€ν λ μ΄νμλ ν΄λΉ λ°μ΄ν°κ° μ μ½μ΄λ κ·μΉμ λ§μ‘±νκ³ μλ μνκ° λμ΄μΌ νλ€λ κ²μ΄λ€.
- κ°μ
μ ν νμμ μμ΄λμ μ΄λ©μΌμ νμλ‘ μ
λ ₯λμ΄ μμ΄μΌ νλ€λ κ·μΉμ΄ μλ€κ³ κ°μ νμλ,
- νμμ μμ΄λλ₯Ό μμ νλ μμ
, μ΄λ©μΌμ΄ μκ³ μμ΄λλ§ κ°μ§ νμμ κ°μ
μμΌμ£Όλ μμ
μ μΌκ΄μ±μ΄ μλ μμ
μ΄λΌ ν μ μλ€.
π Isolation(격리μ±)
- λͺ¨λ νΈλμμ
μ μλ‘ λ€λ₯Έ νΈλμμ
μ μ ν μν₯μ΄ μμ΄μΌ νλ€.
- μμλ₯Ό λ€λ©΄, κ³μ’ Aμμ λμμ μΈμΆλμ΄ κ³μ’ B, κ³μ’ Cλ‘ μ
κΈ νλ μμ
λ€μ΄ μλ€κ³ κ°μ νλ€.
- μ¬κΈ°μ Aμμ Bλ‘ μΈμΆκ³Ό μ
κΈμ΄ λλ μμ
λ€μ νλμ νΈλμμ
,
- Aμμ Cλ‘ μΈμΆκ³Ό μ
κΈμ΄ λλ μμ
λ€μ λ λ€λ₯Έ νλμ νΈλμμ
μΌλ‘ λ΄μΌνλ€.
- μ¦, κ³μ’ Aμλ 10,000μμ΄ μμκ³ 6μ²μμ κ°κ° μ‘κΈ νλ€κ³ μκ°νλ©΄, Aμμ Bλ‘ λ¨Όμ μΈμΆκ³Ό μ
κΈμ΄ μ΄λ£¨μ΄μ§κ³ κ·Έ λ€μ, Aμμ Cλ‘ μΈμΆκ³Ό μ
κΈμ΄ μ΄λ£¨μ΄μ§λ κ³Όμ μΌλ‘ λ΄μΌ λλ©°, 첫λ²μ§Έ μΈμΆμ νκ² λλ©΄ λλ²μ§Έ μΈμΆμ μ€νν μ μλ μμ
μ΄ λλ κ²μ΄λ€.
- λμμ νΈλμμ
μ΄ μ€ν λμλ€κ³ νλλΌλ κ° νΈλμμ
μ μ°μμ μΌλ‘ μ€ννλ κ²κ³Ό κ°μ κ²°κ³Όκ° λμμΌ νλ©°, νΈλμμ
μ΄ λ§λ κ²°κ³Όλ§ λ°μ΄ν°μ λ°μλ λΏ λ€λ₯Έ νΈλμμ
μ μμ
λ΄μ©μ μνμκ° μλ κ²μ΄λ€.
- μ΄λ¬ν νΉμ±μ νΈλμμ
μ 격리μ±μ΄λΌ νλ€.
π Durability(μ§μμ±)
- νλμ νΈλμμ
μ΄ μ±κ³΅μ μΌλ‘ μ€ν λμκ±°λ, μ€ν¨ ν κ²½μ° λͺ¨λ κ²½μ°μ λν λ‘κ·Έκ° λ¨μμΌνλ©° μꡬμ μΌλ‘ κΈ°λ‘λμ΄μΌ νλ€.
- κ³μ’μ΄μ²΄κ° μ±κ³΅μ μΌλ‘ μ€ν μ΄ν, μν μμ€ν
μ μ€λ₯λ‘ λ€μ΄ λλλΌλ κ³μ’μ΄μ²΄ λ΄μμ κΈ°λ‘μΌλ‘ λ¨μ μμ€ν
볡ꡬ μ΄νμλ κ³μ’μ΄μ²΄ λ΄μμ λ°μ λμ΄μΌνλ€. λ°λλ‘ κ³μ’μ΄μ²΄ μ€ μ€λ₯κ° λ°μνμ¬ μ΄μ²΄μ μ€ν¨ νμλ κΈ°λ‘μΌλ‘ λ¨μ 볡ꡬ μ΄νμ κ³μ’μ΄μ²΄κ° μ€ν¨ν κ²κ³Ό κ°μ λ΄μμΌλ‘ λ°μλμ΄μΌ νλ€.
- μ΄λ¬ν νΉμ±μ νΈλμμ
μ μ§μμ±μ΄λΌ νλ€.