회복불가능한 스케줄
스케줄 내에서 커밋된 트랜잭션이 롤백된 트랜잭션이 write 했었던 데이터를 읽은경우
롤백을해도 이런 스케줄은 이전 상태로 회복 불가능할 수 있기 때문에 이런 스케줄은 dbms에서 허용하면안됨
회복가능한 스케줄
스케줄 내에서 어떤 트랜잭션도 자신이 읽은 데이터를 write한 트랜잭션이 먼저 커밋/롤백하기 전까지는 커밋하지 않는 경우
캐스캐이딩 롤백
하나의 트랜잭션이 롤백하면 의존성이있는 다른 트랜잭션도 롤백하는 것
여러 트랜잭션의 롤백이 연쇄적으로 일어나면 처리하는 비용이 많이 듬
캐스캐이드리스 스케줄
스케줄 내에서 어떤 트랜잭션도 커밋되지않은 트랜잭션들이 write한 데이터를 읽지않은 경우 하지만 읽기작업이 없을시 일부 트랜잭션의 결과가 무효화될 수 있음
엄격한 스케줄
스케줄 내에서 어떤 트랜잭션도 커밋되지않은 트랜잭션들이 write한 데이터를 write하지도 read하지도않은 경우
한마디로 회복가능한 스케줄안에
롤백비용이 적은 캐스캐이드리스 스케줄이 있고
부작용을 없앤 엄격한 스케줄이 있음
'데이터베이스 > RDB' 카테고리의 다른 글
| 격리수준 (0) | 2025.12.23 |
|---|---|
| 데이터베이스 동시성 제어 (1) (0) | 2025.12.23 |