πŸͺ kakaotech campus

DB | νŠΈλžœμ μ…˜(Transaction)

c0zi 2023. 6. 10. 15:25

1. νŠΈλžœμž­μ…˜


  • μ—¬λŸ¬κ°œμ˜ SQL 문을 ν•˜λ‚˜μ˜ μ˜€νΌλ ˆμ΄μ…˜μœΌλ‘œ λ¬ΆλŠ” μž‘μ—… λ‹¨μœ„

 

1.1 νŠΈλžœμž­μ…˜μ˜ ν•„μš”μ„±

  • λ°μ΄ν„°λ² μ΄μŠ€ μ‹œμŠ€ν…œ ν™˜κ²½μ—μ„œ 데이터 무결성과 정합성을 보μž₯ν•˜κΈ° μœ„ν•΄ μ‚¬μš©
  • 처리 쀑인 데이터λ₯Ό λ‹€λ₯Έ κ³³μ—μ„œ μ‘°νšŒν•˜κ²Œ 되면 λ¬Έμ œκ°€ λ°œμƒν•  수 있기 λ•Œλ¬Έμ— λ™μ‹œ λ°μ΄ν„°λ² μ΄μŠ€ ν™˜κ²½μ—μ„œ ν•„μš”

 

ex.

홍길동 → κΉ€κ΅­λ°₯으둜 900원 μ†‘κΈˆν•˜λŠ” 상황

 

λ‹€μŒκ³Ό 같은 문제 λ°œμƒμ„ 막기 μœ„ν•΄ μ—¬λŸ¬ SQL문을 마치 μ˜€νΌλ ˆμ΄μ…˜μœΌλ‘œ λ¬Άμ–΄μ•Ό ν•˜λŠ” ν•„μš”μ„± ⇒ νŠΈλžœμž­μ…˜

 


2. ACID


ACID : λ°μ΄ν„°λ² μ΄μŠ€ νŠΈλžœμž­μ…˜μ΄ μ•ˆμ „ν•˜κ²Œ μˆ˜ν–‰λœλ‹€λŠ” 것을 보μž₯ν•˜κΈ° μœ„ν•œ μ„±μ§ˆ

 

μ›μžμ„±, Atomicity

  • νŠΈλžœμž­μ…˜μ€ μ›μžμ  연산을 보μž₯ν•΄μ•Ό ν•œλ‹€.  →  ALL of NOTHING
  • λͺ¨λ“  λ³€κ²½ 사항이 λ°μ΄ν„°λ² μ΄μŠ€μ— μ»€λ°‹λ˜κ±°λ‚˜ νŠΈλžœμž­μ…˜μ΄ μ–΄λŠ μ‹œμ μ—μ„œ μ‹€νŒ¨ν•˜λ©΄ λͺ¨λ“  λ³€κ²½ 사항이 λ‘€λ°±λœλ‹€.

일관성, Consistency

  • νŠΈλžœμž­μ…˜μ΄ μ’…λ£Œλ˜μ—ˆμ„ λ•Œ λ°μ΄ν„°μ˜ 무결성이 보μž₯λœλ‹€.
  • λ°μ΄ν„°λ² μ΄μŠ€λŠ” μœ λ‹ˆν¬ μ œμ•½, μ™Έλž˜ν‚€ μ œμ•½ λ“± 미리 μ •μ˜λœ μ œμ•½ 쑰건을 톡해 νŠΈλžœμž­μ…˜μ„ μˆ˜ν–‰ν•œλ‹€.

독립성, Isolation

  • νŠΈλžœμž­μ…˜μ€ μ„œλ‘œ κ°„μ„­ν•˜μ§€ μ•Šκ³  λ…λ¦½μ μœΌλ‘œ λ™μž‘ν•œλ‹€.
  • νŠΈλžœμž­μ…˜ 격리 λ ˆλ²¨μ„ 톡해 κ°œλ°œμžκ°€ μ œμ–΄ κ°€λŠ₯ν•˜λ‹€.

지속성, Durability

  • μ™„λ£Œλœ νŠΈλžœμž­μ…˜μ€ μœ μ‹€λ˜μ§€ μ•ŠλŠ”λ‹€.