SQL응용2 [SQL응용] 트랜잭션 ( PART 2 ) 병행 제어 다수 사용자 환경에서 여러 트랜잭션을 수행할 때, 일관성을 유지하기 위해 제어하는 기법이다. 병행 제어의 목적 - 데이터베이스 공유 최대화 - 시스템 활용도 최대화 - 데이터베이스 일관성 유지 - 사용자 응답시간 최소화 병행 제어 미보장 시 문제점 갱신손실 ( Lost Update ) 먼저 실행된 트랜잭션 결과를 이후 실행된 트랜잭션이 덮어쓸 때 발생하는 오류 현황 파악 오류 ( Dirty Read ) 트랜잭션의 중간 수행 결과를 다른 트랜잭션이 참조하여 발생하는 오류 모순성 ( Inconsistency ) 트랜잭션이 동시에 실행되어 데이터 베이스 일관성이 결여되는 오류 연쇄복귀 ( Cascading Rollback ) 다수의 트랜잭션이 데이터 공유 시 다른 트랜잭션 처리취소할 경우 트랜잭션 .. 2023. 7. 1. [SQL응용] 트랜잭션 ( PART 1 ) 트랜잭션의 개념 시스템 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위 트랜잭션의 특성 원자성 ( Atomicity ) 연산 전체가 모두 정상적으로 실행되거나 모두 취소되어야 하는 성질 일관성 ( Consisterncy ) 트랜잭션 수행 전과 수행 완료 후의 상태가 같아야 하는 성질 격리성, 고립성 ( Isolation ) 동시에 실행되는 트랜잭션들이 서로 영향이 없어야 하는 성질 영속성 ( Durability ) 완료된 트랜잭션의 결과는 데이터베이스에 영속적으로 저장되어야하는 성질 트랜잭션의 상태 변화 -> 부분완료 -> 완료 활동 | -> 실패 -> 철회 활동 상태 ( Active ) 초기, 트랜잭션이 실행 중일 때 상태 부분 완료 상태 ( Partialy Committed ) 마지막 명령문.. 2023. 7. 1. 이전 1 다음