Maystyle :
Admin : New post
Guestbook
Local
media
Catergories
Recent Articles
Recent Comments
Recent Trackbacks
Calendar
Tag
Archive
Link
Search
 
  트랜잭션 프로세싱 
작성일시 : 2008. 1. 15. 14:16 | 분류 : SQL Server/Kernel

DB 공부하기 1번째 : 선언적 데이터 무결성(Declarative Data Integrity) (http://maystyle.tistory.com/218)
DB
공부하기 2번째 : 트랜잭션 프로세싱

트랜잭션 프로세싱은 SQL 서버의 일관성과 복구 가능성을 보증하는 기능으로 SQL 서버 작업의 기본 단위이다. 모든 트랜잭션은 Commit 명령어가 실행되기 전까지 업데이트되지 않는다.

모든 트랜젝션은 ACID 속성을 갖는다.

원자성(Atomicity)
트랜잭션의 내용은 모두 Commit 되거나 Rollback 된다.

일관성(Consistencuy)
만약 송금 업무가 트랜잭션으로 발생할 경우 송금자의 계좌에서 빠져 나간 금액은 수금자의 계자에 입금된 금액과 일치해야 한다.

격리성(Isolation)
트랜잭션들은 서로 완벽하게 격리되어 다른 트랜잭션으로 부터 영향을 받지 않는다. SQL 2000의 경우  Update 혹은 Insert 등의 데이터 변환일 일어날 경우 with no lock 구믄을 사용하면 Select 시 트랜젝션이 종료 되지 않은 데이터가 읽어지는 현상이 있었다. 이는 격리성을 위반한 것으로 SQL 2005에서는 스냅샷 격리기능을 통하여, 위의 기능에 대한 격리성까지 지원 하고 있다.

영속성(Durability)
트랜잭션이 진행 되는 동안 (commit 이전)에 데이터베이스에 정전이 일어났을 경우 데이터베이스는 해당 트랜잭션을 반영하지 않는다. 반면에 Commit이 된 이후라면 반영하게 된다.

|