[TOC]
ACIDλ λ°μ΄ν°λ² μ΄μ€ νΈλμμ μ΄ μμ νκ² μνλλ€λ κ²μ 보μ₯νκΈ° μν μ±μ§μ κ°λ¦¬ν€λ μ½μ΄λλ€.
νΈλμμ μλ 4κ°μ§μ νΉμ±μ΄ μλ€.
- νΈλμμ μ μμ μ΄ λΆλΆμ μΌλ‘ μ€νλκ±°λ μ€λ¨λμ§ μλ κ²μ 보μ₯νλ κ²μ λ§νλ€.
- μ¦, All oro Nothingμ κ°λ μΌλ‘μ¨ μμ λ¨μλ₯Ό μΌλΆλΆλ§ μ€ννμ§ μλλ€λ κ²μ μλ―Ένλ€.
νΈλμμ μμ μμμ±μ μννκ³ μλ νΈλμμ μ μν΄ λ³κ²½λ λ΄μμ μ μ§νλ©΄μ, μ΄μ μ commitλ μνλ₯Ό μμ μμμ λ°λ‘ μ μ₯ν¨μΌλ‘μ¨ λ³΄μ₯νλ€.
νμ¬ μννκ³ μλ νΈλμμ μμ μ€λ₯κ° λ°μνλ©΄ νμ¬ λ΄μμ λ λ €λ²λ¦¬κ³ μμ μμμ μ μ₯νλ μνλ‘ rollbackνλ€.
μ΄μ λ°μ΄ν°λ€μ΄ μμλ‘ μ μ₯λλ μμμ λ‘€λ°± μΈκ·Έλ¨ΌνΈλΌκ³ νλ©°, νμ¬ μννκ³ μλ νΈλμμ μ μν΄ μλ‘κ² λ³κ²½λλ λ΄μμ λ°μ΄ν°λ² μ΄μ€ ν μ΄λΈμ΄λΌκ³ νλ€. νΈλμμ μ μμμ±μ λ‘€λ°± μΈκ·Έλ¨ΌνΈμ μν΄ λ³΄μ₯λλ€κ³ ν μ μλ€.
μ€λ₯κ° λ°μνλ©΄ rollbackμ νλλ°, νΈλμμ μ κΈΈμ΄κ° κΈΈμ΄μ§λ©΄ μ€λ₯κ° λ°μνμ§ μλ λΆλΆλ λ€μ μ²μλΆν° μμ μ μνν΄μΌ νλ€. λ°λΌμ νμ€ν λΆλΆμ λν΄μλ rollbackμ΄ λμ§ μλλ‘ μ€κ° μ μ₯ μ§μ μΈ save pointλ₯Ό μ§μ ν μ μλ€. save pointλ₯Ό μ§μ ν μ μλ€. save pointλ₯Ό μ§μ νλ©΄ rollbackν λ save point μ΄μ μ νμ€νλ€κ³ κ°μ£Όνκ³ κ·Έ μ΄νλΆν° μ§ννκ² λλ€.
- νΈλμμ μ΄ μ±κ³΅μ μΌλ‘ μλ£λλ©΄ μΌκ΄μ μΈ DBμνλ₯Ό μ μ§νλ κ²μ λ§νλ€.
- μ¬κΈ°μμ μΌκ΄μ±μ΄λ μμ μ ν λͺ¨λ ν 컬λΌμ λ°μ΄ν° νμ μ΄ μ μ§λμ΄μΌ νλ€λ κ²μ΄λ€.
νΈλμμ μμ μΌκ΄μ±μ νΈλμμ μν μ , νμ λ°μ΄ν° λͺ¨λΈμ λͺ¨λ μ μ½μ‘°κ±΄(PK, FK...)μ λ§μ‘±νλ κ²μ ν΅ν΄ 보μ₯νλ€.
μ¦, ν ν μ΄λΈμμ PKμ μ μ½μ‘°κ±΄μ΄ λ³κ²½λλ©΄ λ€λ₯Έ ν μ΄λΈμμ FKμ μ μ½μ‘°κ±΄λ λ³κ²½λμ΄μΌ νλ€. ν μͺ½μ ν μ΄λΈμλ§ λ°μ΄ν° λ³κ²½μ¬νμ΄ μ΄λ£¨μ΄μ§λ©΄ μλλ κ²μ΄λ€.
μ΄λ€ μ΄λ²€νΈμ μ‘°κ±΄μ΄ λ°μνμ λ, νΈλ¦¬κ±°λ₯Ό ν΅ν΄ 보μ₯νλ€.
νΈλ¦¬κ±°λ λ°μ΄ν°λ² μ΄μ€ μμ€ν μ΄ μλμ μΌλ‘ μνν λμμ λͺ μνλλ° μ¬μ©λλ€.
- νΈλμμ μν μ λ€λ₯Έ νΈλμμ μ μμ μ΄ λΌμ΄λ€μ§ λͺ»νλλ‘ λ³΄μ₯νλ κ²μ λ§νλ€.
- νΈλμμ λΌλ¦¬λ μλ‘λ₯Ό κ°μν μ μλ€.
νΈλμμ μ΄ κ³ λ¦½μ±μ 보μ₯νλ λ°©λ²μ λν΄ μ΄ν΄νκΈ° μν΄μλ λ³ν νΈλμμ μ λν΄ λ¨Όμ μμμΌ νλ€.
CPUκ° μ¬λ¬ νλ‘μΈμ€λ₯Ό μ²λ¦¬νλ κ²μ²λΌ, νΈλμμ μ μ ν΄μ§ μκ°μ ν λΉν΄μ μμ μ νλ€κ° λΆμ¬λ μκ°μ΄ λλλ©΄, λ€λ₯Έ νΈλμμ μ μ€ννλ μ΄λ° λ°©μμΌλ‘ νΈλμμ λ€μ μ‘°κΈμ© μ²λ¦¬νλ κ²μ λ§νλ€.
κ·Έλ°λ° μ΄λ κ² λλ©΄ λ§μ νΈλμμ λ€μ΄ μ‘°κΈμ© μ²λ¦¬λλ κ³Όμ μμ 곡ν΅λ λ°μ΄ν°λ₯Ό μ‘°μνκ² λλλ°, μ΄ κ²½μ° λ°μ΄ν°κ° νΌλμ€λ¬μ μ§ μ μλ€.
- μ±κ³΅μ μΌλ‘ μνλ νΈλμμ μ μμν λ°μμ΄ λλ κ²μ λ§νλ€.
- commitμ νλ©΄ νμ¬ μνλ μμν 보μ₯λλ€.