Stay Hungry Stay Foolish
728x90

DB 2

[Database] 트랜잭션 격리 수준 (Isolation Level)

💾 데이터베이스 트랜잭션 격리 수준 (Isolation Level)목차1. 트랜잭션 격리 시 발생하는 이상 현상(Anomalies)2. SQL 표준 격리 수준 4단계3. 심화 데이터 이상 현상4. 스냅샷 격리(Snapshot Isolation)5. 주요 RDBMS별 특징1. 트랜잭션 격리 시 발생하는 이상 현상트랜잭션이 동시에 실행될 때 격리 처리가 완벽하지 않으면 데이터 불일치가 발생합니다.Dirty Read: 커밋되지 않은 트랜잭션의 데이터를 읽는 현상 (롤백 시 무결성 파괴).Non-repeatable Read: 한 트랜잭션 내에서 같은 데이터 조회 시, 사이 값이 수정되어 결과가 다른 현상.Phantom Read: 범위 조회 시, 사이 데이터가 삽입/삭제되어 결과 건수가 달라지는 현상.2. SQ..

[Database] MVCC(다중 버전 동시성 제어)

📂 데이터베이스 MVCC 실전: Lost Update와 Write Skew 해결목차1. MVCC(다중 버전 동시성 제어)란?2. 격리 수준(Isolation Level)별 동작 차이3. Lost Update 해결: Locking Read (FOR UPDATE)4. Write Skew(쓰기 왜곡) 현상과 해결5. MySQL vs PostgreSQL: 실전 동작 및 Serializable 비교6. Q&A 및 최종 요약1. MVCC란 무엇인가?다중 버전 동시성 제어(Multi-Version Concurrency Control)는 데이터 접근 시 해당 시점의 스냅샷(버전)을 보여주어 동시성을 높이는 기법입니다. 핵심 원칙은 "읽기는 쓰기를 막지 않고, 쓰기는 읽기를 막지 않는다"는 것입니다.작동 방식: 데이터..

728x90