본문 바로가기
DataBase

[database] Schedule

by jyee 2024. 1. 17.
728x90
반응형

Schedule이란?

여러 transaction들이 동시에 실행할 때 각 transaction에 속한 operation들의 실행순서이다. 

트랜잭션 내에 operation 순서는 바뀌지 않는다.

 

 

Serial schedule

한번에 하나의 트랙잭션만 실행되기 때문에 좋은 성능을 낼 수 없고 현실적으로 사용할 수 없는 방식이다.

 

Nonserial schedule 

장점은 트랜잭션들이 겹쳐서 실행되기 때문에 동시성이 높아져서 같은 시간동안 더 많은 트랜잭션들을 처리할 수 있다.

단점은 트랜잭션들이 어떤 형태로 겹쳐서 실행되는지에 따라서 이상한 결과가 나올 수 있다. 

 

 

Conflict of two operations

세가지 조건을 모두 만족해야 conflict

  • 서로 다른 트랜잭션 소속
  • 같은 데이터에 접근
  • 최소 하나는 write operation

 

conflict equivalent 

1.두 스케줄은 같은 트랜잭션을 가져야 한다

2. 어떤 conflicting opertions의 순서도 양쪽 스케줄 모두 동일하다. 

이 두 조건을 모두 만족해야 가능한 것 

serialize랑 nonserialize를 합치는 것 

 

이걸 합치는 이유는 serialize랑 nonserialize의 장점만 모아서 성능을 더 높이기 위해

 

728x90
반응형

'DataBase' 카테고리의 다른 글

[database] Index 정리  (0) 2024.01.16
[DATABASE] 서브쿼리란?  (1) 2023.11.15