데드락

    데이터베이스의 병행제어기법

    데이터베이스의 병행제어 병행제어란 ? 여러개의 트랜잭션이 동시에 수행될 때 DB의 일관성을 파괴하지 않도록 트랜잭션간의 상호작용을 제어하는 것 병행(concurrency)는 매우 빠르게 여러 트랜잭션 사이를 이동하면서 조금씩 처리를 수행하는 방식 병행 제어의 목적은 일관성 외에도, DB 공유도 최대화, 시스템 활용도 최대화, 사용자 응답 시간 최소화 등이 있다. 병행 제어를 하지 않을 경우 트랜재션들이 동시에 DB에 접근하며 문제가 생긴다. 병행제어에 실패한다면 갱신 분실 (Lost Update) 같은 데이터에 둘 이상의 트랜잭션이 동시에 갱신할 때, 갱신 결과의 일부가 없어지는 것. 동일한 데이터 X에 값을 더하는 두 트랜잭션이 있을 때, 후행하는 트랜잭션은 선행 트랜잭션 값이 더해지기 전의 값을 받아..