320x100
320x100

https://chrisjune-13837.medium.com/db-transaction-%EA%B3%BC-acid%EB%9E%80-45a785403f9e

트랜잭션

- 데이터베이스의 상태를 변환시키는 여러 작업들을 하나로 묶은 단위

 : 한꺼번에 수행되어야 하는 일련의 작업 또는 연산

 : DBMS에서 병행 제어 및 회복 작업시 처리되는 작업의 논리적 단위

 : 사용자의 시스템에 대한 서비스 요구시 응답하기 위한 상태 변환 과정의 작업 단위

 

- 특징

 : 하나의 트랜잭션은 Commit(반영)되거나 Rollback(복귀) 됨

 

 

 

 

트랜잭션의 성질 (ACID)

- Atomicity (원자성)

 : 트랜잭션 내의 모든 작업이 Commit되거나 Rollback 되는 특성

 ㆍ트랜잭션의 연산은 데이터베이스에 모두 반영되든지 전혀 반영되지 않음

 ㆍ트랜잭션 내의 단 하나의 명령이라도 수행되지 않을 경우 트랜잭션 전부가 취소 됨

 

 

- Consistency (일관성)

 : 트랜잭션의 실행 완료 후 데이터베이스의 상태를 일관적으로 유지하는 것

 ㆍ데이터의 타입이 변하는 등의 데이터에 대한 변화가 발생하지 않는 것

 ㆍ시스템이 가지고 있는 고정요소는 트랜잭션 수행전과 후의 상태가 같아야 함

 

 

- Isolation (격리성)

 : 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 트랜잭션끼리 서로의 연산에 끼어들 수 없음 

 ㆍ수행중인 트랜잭션은 완료될때까지 다른 트랜잭션에서 수행결과를 참조할 수 없음

 

 

- Durability (지속성)

 : 한번 Commit(반영)된 트랜잭션의 내용은 영원히 적용 됨

 

 

 

 

트랜잭션의 연산

- Commit

 : 트랜잭션에 대한 작업을 성공적으로 마치고 데이터베이스에 적용시키는 연산

 

- Rollback

 : 트랜잭션이 비정상적으로 처리되었을때 트랜잭션 내의 작업들을 취소하는 연산

 : 트랜잭션을 성공적으로 마쳤어도 실행가능

 : Rollback수행시 해당 트랜잭션을 재시작하거나 폐기

 

 

 

 

 

https://coding-factory.tistory.com/226

트랜잭션의 상태

- Active (활동)

 : 트랜잭션이 활동중인 상태

 

- Failed (실패)

 : 트랜잭션 실행 중 오류발생으로 인해 중단된 상태

 

- Aborted (철회)

 : 트랜잭션이 비정상적으로 종료되어 Rollback연산을 수행한 상태

 

- Partially Committed (부분 완료)

 : 트랜잭션의 마지막 연산까지 실행 후 Commit 연산이 실행되기 전의 상태

 

- Committed (완료)

 : 트랜잭션을 Commit후 성공적으로 종료되어 데이터베이스에 적용된 상태

 

 

 

 

 

Refference

 

[DB] Transaction 과 ACID란?

DB의 기초개념인 트랜젝션과 ACID에 대해서 알아봅니다.

chrisjune-13837.medium.com

 

 

[DB이론] 트랜잭션(transaction)과 ACID 특성을 보장하는 방법

1. 트랜잭션( transaction ) 트랜잭션이란 질의(query)를 하나의 묶음 처리해서 만약 중간에 실행이 중단됐을 경우, 처음부터 다시 실행하는 Rollback을 수행하고, 오류없이 실행을 마치면 commit을 하는

victorydntmd.tistory.com

 

 

[DB기초] 트랜잭션이란 무엇인가?

 트랜잭션의 정의 트랜잭션(Transaction)은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트

coding-factory.tistory.com

 

300x250
728x90