TIL

트랜잭션 Transaction

아람2 2025. 2. 6. 10:22
반응형

데이터베이스 관리 시스템에서 트랜잭션은 단일 논리적 작업 단위로 수행되는 일련의 작업이다 

이러한 작업에는 데이터베이스에서 데이터 읽기, 쓰기, 업데이트, 삭제가 포함될 수 있다 

트랜잭션은 "원자성 Atomic" 이 있어 모든 작업이 성공적으로 실행한 경우에만 완료된 것으로 간주하며 

그렇지 않으면 트랜잭션을 Rollback 해야 한다 

 

🐣 쉽게 말하면, 데이터베이스의 상태를 변경시키는 작업의 단위를 말하며,

한꺼번에 수행되어야 할 연산들을 모아놓은 것이다 

연산들을 모아놓은 것이기 때문에 복수형으로 쓰지 않고, 단수형으로 사용한다 🐣

 

시작 및 종료 트랜잭션 사이에 유지되는 모든 유형의 데이터베이스 액세스 작업은 단일 논리적 트랜잭션으로 간주된다

데이터베이스가 커밋된 후에만 상태가 하나의 일관된 상태에서 다른 일관된 상태로 변경되는 "일관성" 을 가진다  

🐣 트랜잭션이 진행되는 동안에는, 처음 트랜잭션을 진행하기 위해 참조한 데이터베이스로 진행된다 

트랜잭션이 진행되면서 데이터베이스가 변경되더라도 업데이트된 데이터베이스로 트랜잭션을 진행하지 않는다 🐣

 

또한, 둘 이상의 트랜잭션이 동시에 실행되고 있을 경우, 어떠한 하나의 트랜잭션이라도

다른 트랜잭션의 연산에 끼어 들지 않는 "독립성" 을 가진다 

 

마지막으로, 트랜잭션이 성공적으로 완료되었을 경우, 결과는 영구적으로 반영되어야 한다는 "영구성" 을 가진다 

 

 

Commit 

현재 트랜잭션의 작업이 성공적으로 완료된 후에 다른 트랜잭션의 추가 작업이 수행되도록 하기 위해 

트랜잭션에 의해 수행된 변경 사항을 데이터베이스에 영구적으로 커밋한다 

Rollback

트랜잭션이 비정상적으로 중단되어 원자성이 깨진 경우

데이터베이스를 마지막으로 저장된 상태로 되돌리기 위해 수행된다 

 

 

참고한 사이트 https://www.geeksforgeeks.org/transaction-in-dbms/

반응형

'TIL' 카테고리의 다른 글

Tomcat  (0) 2025.02.08
Java Application 실행 환경 구축  (1) 2025.02.07
[TIL] MTTD/ MTTR/ MTTF/ MTBF  (0) 2025.01.23
[TIL] CORS 오류  (1) 2025.01.17
Solid Principle  (0) 2024.12.20