acid 3

트랜잭션(Transaction) — ACID, 격리 수준, MVCC까지

Java/Spring 백엔드 면접 준비 학습 노트1. 트랜잭션이란?트랜잭션은 더 이상 쪼갤 수 없는 작업의 최소 단위다. 여러 쿼리를 하나의 묶음으로 처리해 데이터 정합성을 보장하는 핵심 개념이다.왜 필요한가? — 계좌이체 예시원이가 민수에게 10만원을 이체할 때 두 쿼리가 필요하다.UPDATE accounts SET balance = balance - 100000 WHERE user = '원'; -- 1단계UPDATE accounts SET balance = balance + 100000 WHERE user = '민수'; -- 2단계1단계 실행 후 서버가 죽으면 원이 통장은 -10만원이지만 민수 통장은 그대로 — 돈이 사라진다.두 쿼리를 하나의 트랜잭션으로 묶어야 둘 다 성공하거나, 둘 다 실패하도..

Computer Science 2026.06.12

트랜잭션 격리수준: 데이터 정합성과 성능 사이의 균형

트랜잭션의 ACID 속성 중 격리성(Isolation)이 보장되지 않을 때 발생할 수 있는 문제점들을 설명하고, 이를 해결하기 위한 트랜잭션 격리 수준들을 설명하세요.트랜잭션 속성: ACID속성의미 목적실무 포인트AAtomicity (원자성)모두 성공 또는 모두 실패(All or Nothing)작업 단위 보호CConsistency (일관성)트랜잭션 전후 데이터 일관성(무결성) 유지데이터 오염 방지IIsolation (격리성)동시에 실행되는 트랜잭션 독립성 유지동시성 이슈 방지DDurability (지속성)성공된 작업은 영구 보존장애 발생 시 복구 보장격리성이 보장되지 않을 때의 주요 문제점1. Dirty Read커밋되지 않은 데이터를 다른 트랜잭션이 읽는 현상2. Non-repeatable Read부정합..

Computer Science 2025.07.24

Spring Transaction

1. 트랜잭션(Transaction)DB 상태를 변화시키는 작업의 논리적 단위반드시 모두 성공하거나 모두 실패해야 함데이터 무결성(일관성) 보장과 예외 상황 대비트랜잭션 속성: ACID트랜잭션이 신뢰성과 무결성을 갖추기 위한 핵심 원칙속성의미 목적실무 포인트AAtomicity (원자성)모두 성공 또는 모두 실패(All or Nothing)작업 단위 보호CConsistency (일관성)트랜잭션 전후 데이터 일관성(무결성) 유지데이터 오염 방지IIsolation (격리성)동시에 실행되는 트랜잭션 독립성 유지동시성 이슈 방지DDurability (지속성)성공된 작업은 영구 보존장애 발생 시 복구 보장Isolation (격리성)각 트랜잭션이 서로 영향을 받지 않도록 분리격리 수준(Isolation Level)수..

728x90