[DB] MVCC

Na young·2024년 1월 31일
0

DB

목록 보기
9/17

11. MVCC

11.1 MVCC

Multi-Version Concurrency Control (다중 버전 동시성 제어)

많은 사용자들이 동시에 트랜잭션을 일으킬 때 DB를 보호하는 것

락 없이 (lock-free) 읽기 성능을 증가시키는 기술

→ 잠금을 안쓰니까 RDBMS가 빠르게 작동, 다른 사람이 데이터를 삭제하거나 수정해도 읽기 시작했으면 데이터 사용 가능,

구현방식

  1. Undo Segment를 사용하는 방식 → 오라클/MySQL
  2. Pessimistic Lock 기반의 MGA 방식 → InnoDB 엔진

격리 수준이 다를 경우, 락이 걸리지 않고 동시에 읽는 것이 가능

동일한 격리수준일 경우, Undo Log를 동시에 여러 개 복제해서 읽기 락이 발생될 확률을 낮춤

일종의 데이터 변경사항에 따른 버전 컨트롤

11.2 Undo로그의 발전

  1. 트랜잭션의 롤백을 지원
  2. 트랜잭션의 격리수준을 지원
  3. MVCC를 지원
profile
개발어린이

0개의 댓글

관련 채용 정보