* 트랜잭션(Transaction)의 정의

 

- 데이터베이스에서 하나의 논리적 기능 수행을 위한 연삽 집합으로서의 작업의 단위이다.

 

- 데이터베이스 관리시스템에서 회복 및 병행 수행시 처리되는 논리적 단위이다.

 

-  정상 종료시 Commit연산이 비정상종료시 Rollback연산이 수행된다.

 

* 트랜잭션의 특성

 

ㄴ 원자성(Atomicity):

 

     데이터베이스에 모두 반영되든지 아니면 전혀 반영되지 않아야 한다.

 

    ● 완벽히 수행되거나 그렇지 않으면 모두 취소되어야 한다.

 

ㄴ 일관성(Consistency):

 

    ● 데이터베이스는 트랜잭션 수행이 완료 되면 일관성있는 데이터베이스 상태로 변환되어야 한다.

 

    ● 시스템이 가지고 있는 고정 요소는 트랜잭션 구행 전과 수행 완료 후에 상태가 같아야 한다.

 

    ● 동시에 실행되는 트랜잭션이 없는 고립 상태에서의 트랜잭션 수행은 데이트베이스의 일관성을 유지해야한다. 

 

ㄴ 독립성(Isolation):

 

    ● 한 트랜잭션이 완료되기 전에는 다른 데이터를 다른 트랜잭션이 접근 할 수 없어야 한다. 

 

    ● 여러 트랜잭션들이 동시에 수행되어도 그 결과는 순차적으로 실행딘 결과와 같아야 한다.

     

ㄴ 영속성(Durability):

   

     ● 트랜잭션의 실행이 성공적으로 실행 완료 되면 시스템 오류가 발생하여도 트랜잭션에 의해

         변경된 내용은 지속되어야 한다.

                                                             

    ● 성공적으로 완료된 트랜잭션의 결과는 영구적으로 반영 되어야한다.  

 

* 트랜잭션의 상태

 

- 활동(Active): 트랜잭션이 실행중인 상태

 

- 실패(Failed): 트랜잭션 실행중 오류가 발생하여 중단된 상태

 

- 철회(Aborted): 트랜잭션이 비정상적으로 종료되어 Rollback  연산이 수행된 상태.

 

- 부분 완료(Partially Commited): 트랜잭션의 마지막 연산까지 실행 됬지만 Commit 연산이 실행 전인 상태.

 

- 완료(Commited): 트랜잭션이 성공적으로 완료 되어 Commit 연산이 실행 된 상태.

728x90

'IT > 정보처리기사' 카테고리의 다른 글

병행제어  (0) 2018.01.13
회복  (0) 2018.01.12
인덱스  (0) 2018.01.12
시스템 카탈로그  (0) 2018.01.12
정규화  (0) 2018.01.03

+ Recent posts