이번에는 트랜잭션에 대해 알아보겠습니다
트랜잭션이란?
트랜잭션(Transaction)은 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 작업 단위를 말합니다. 데이터베이스에서 여러 개의 데이터를 처리할 때, 하나의 트랜잭션으로 묶어서 한꺼번에 처리할 수 있습니다.
트랜잭션은 "ACID"라고 불리는 4가지 특성을 가지고 있습니다.
트랜잭션의 특징 ACID
- 원자성(Atomicity) : 트랜잭션의 작업 단위는 모두 수행되거나 하나도 수행되지 않아야 합니다. 즉, 트랜잭션이 실행되다가 오류가 발생하면 이전 상태로 되돌아가야 합니다.
- 일관성(Consistency) : 트랜잭션이 실행을 성공적으로 완료하면 데이터베이스의 일관성이 유지되어야 합니다. 즉, 트랜잭션이 실행 전과 실행 후에 데이터베이스의 일관성이 깨지면 안 됩니다.
- 고립성(Isolation) : 트랜잭션 실행 시 다른 트랜잭션의 영향을 받아 데이터의 일관성이 깨지지 않도록 분리되어야 합니다. 즉, 하나의 트랜잭션 실행 중에는 다른 트랜잭션이 끼어들지 못하도록 해야 합니다.
- 지속성(Durability) : 트랜잭션이 성공적으로 실행된 후 데이터의 일관성과 무관하게 결과는 영구적으로 저장되어야 합니다. 즉, 시스템에 문제가 생기더라도 정상적으로 복구될 수 있어야 합니다.
이러한 트랜잭션은 데이터베이스와 연계되어 사용됩니다. 트랜잭션은 데이터베이스 내에서 수행되며, 데이터베이스 처리 결과가 맞지 않거나 오류가 발생할 경우 롤백 기능을 통해 이전 상태로 되돌릴 수 있습니다. 이를 통해 데이터베이스의 일관성과 무결성을 보장할 수 있습니다.
'개발 지식' 카테고리의 다른 글
Ant build VS Maven build VS Gradle Build (0) | 2023.08.04 |
---|---|
index란? (0) | 2023.04.12 |
애자일(Agile)이란? (0) | 2023.03.27 |
[CS] Get vs Post Method 차이점을 알아보자! (0) | 2023.03.13 |
SendGrid Dynamic Template 생성하기 (0) | 2023.03.08 |