데이터베이스에서 하나의 논리적 작업 단위를 트랜잭션이라고 합니다.
이 트랜잭션이 안전하게 동작하기 위해 보장해야 하는 성질을 ACID라고 합니다.
1. Atomicity(원자성)
트랜잭션은 모두 수행되거나 전혀 수행되지 않아야 합니다. 중간단계에서 오류가 발생하면 지금까지 수행된 작업들이 모두 취소(ROLLBACK)되고 이전 상태로 되돌아 가야 합니다.
2. Consistency(일관성)
트랜잭션 실행 전과 실행 후에 데이터베이스는 일관된 상태를 유지해야 합니다.
제약 조건, 규칙 등 을 항상 만족해야 합니다.(Unique, pk, fk 등)
3. Isolation(격리성)
동시에 여러 트랜잭션이 실행되더라도 작업끼리 서로 간섭하지 않아야 합니다.
4. Durability(지속성)
트랜잭션이 성공적으로 commit되면 그 결과 시스템 장애가 발생하더라도 영구적으로 반영되어야 합니다.
이를 통해서 데이터의 안정성과 신뢰성을 보장합니다.
'Interview Question' 카테고리의 다른 글
| [Interview Question] TCP와 UDP의 차이를 설명해보세요. (0) | 2025.09.02 |
|---|---|
| [Interview Question] N+1 문제란 무엇이며, 어떻게 해결할 수 있나요? (0) | 2025.09.02 |
| [Interview Question] INNER JOIN, LEFT JOIN 차이는 무엇인가요? (0) | 2025.09.02 |
| [Interview Question] Index에 대해서 설명해보세요 (0) | 2025.09.02 |
| [Interview Question] 정규화와 비정규화의 차이를 설명해주세요. (0) | 2025.09.01 |