본문 바로가기
컴퓨터

데이터베이스(DB) 트랜잭션(transaction)

by 카앙구운 2015. 10. 30.
728x90
반응형

DB transaction

transaction의 사전적 의미는 거래,매매,처리(과정)을 뜻한다. 사전적 의미로써 다가간다면 트랜잭션이 조금은 어렵지 않게 느낄 수도 있다. 데이터베이스 내에서 하나로 처리해야되는 명령문의 작업단위로써 한번에 것을 말한다.




예를 들면 ##이 %%에게 돈을 전달했을 때 받는 %%의 처리과정 중 흐름이 끊겼다면 ##돈은 빠져나갔지만 %%은 받지 않은 상황이 된다.

이렇게 중간에 예외가 발생해 작업을 마칠 수 없다면 트랜잭션을 이용하여 처음과 같은 모습으로 돌려되야 한다. 그것이 바로 트랜잭션 롤백(transaction rollback)이다.

물론 롤백도 있다면 커밋(Commit)도 있다. 작업을 완료했을 때 내가 작업을 완료 했다는 신호처럼 보내는 것이다.


트랜잭션의 특성

트랜잭션의 특성- 원자성,정합성,고립성, 내구성


원자성(Atomicity)은 시스템의 어떠한 상황에서도 한 트랜잭션에 대한 모든 연산이 데이테베이스에 모두 반영되든가  혹은 반영되지 않던가 둘 중에 하나만을 수행해야하는것을 말한다.




정합성(Consistency)은 트랜잭션이 실행에 성공적으로 완료하고 언제가 일관적인 데이터베이스에 상태를 유지해야하는 것을 말한다. 무결성 제약에 위반하는것이 있다면 트랜잭션은 중단된다.




고립성(Isolation)은 트랜잭션 수행 시 다른 트랜잭션의 연산이 끼어들지 못하도록 보장 받는 것이며 트랜잭션 실행내역은 연속적이어함을 의미한다.



내구성(Durability)은 성공적으로 수행된 트랜잭션은 영원히 반영되어야 함을 의미하고 보통의 트랜잭션의 경우 로그를 모두 저장뒤 commit을 하게 된다.



728x90
반응형

'컴퓨터' 카테고리의 다른 글

netsh wlan start hostednetwork 설정  (1) 2015.11.10
주기억장치 개념  (0) 2015.11.04
캐시 메모리 (L1, L2, L3)  (0) 2015.10.28
전자정부프레임워크 설치/설정 방법  (0) 2015.10.26
메타블로그 블로그 홍보는 방법  (0) 2015.10.22

댓글