데이터베이스 Force와 Steal: 두 판 사이의 차이

IT위키
(새 문서: 분류:데이터베이스 ;트랜잭션 처리 시 데이터 기록에 관한 옵션 == Force == ; 트랜잭션이 완료된 후 바로 데이터를 디스크에 기록할 것인...)
 
(Typo)
 
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다)
1번째 줄: 1번째 줄:
[[분류:데이터베이스]]
[[분류:데이터베이스]]
;트랜잭션 처리 시 데이터 기록에 관한 옵션
;트랜잭션 처리 시 데이터 기록에 관한 옵션


== Force ==
==Force==
; 트랜잭션이 완료된 후 바로 데이터를 디스크에 기록할 것인가?
 
* '''Force''': 바로 기록한다
;트랜잭션이 완료된 후 바로 데이터를 디스크에 기록할 것인가?
* '''No-Force''': 바로 기록하지 않는다(Redo 필요)
 
트랜잭션이 완료되었으므로 당연히 기록할 것 같지만 성능 효율 등을 이유로, 대부분의 DMBS는 적당히 기록해야 할 때 기록하는 메커니즘을 사용한다.
*'''Force''': 바로 기록한다
*'''No-Force''': 바로 기록하지 않는다(Redo 필요)
 
트랜잭션이 완료되었으므로 당연히 기록할 것 같지만 성능 효율 등을 이유로, 대부분의 DBMS는 적당히 기록해야 할 때 기록하는 메커니즘을 사용한다.
 
==Steal==
 
;트랜잭션이 완료되지 않은 상태에서 데이터를 디스크에 기록할 것인가?
 
*'''Steal''': 기록한다(Undo 필요)
*'''No-Steal''': 기록하지 않는다


== Steal ==
; 트랜잭션이 완료되지 않은 상태에서 데이터를 디스크에 기록할 것인가?
* '''Steal''': 기록한다(Undo 필요)
* '''No-Steal''': 기록하지 않는다
트랜잭션이 완료되지 않았으므로 당연히 기록하면 안될 것 같지만 성능 효율 등을 이유로, 대부분의 DBMS는 적당히 미리 기록하는 메커니즘을 사용한다.
트랜잭션이 완료되지 않았으므로 당연히 기록하면 안될 것 같지만 성능 효율 등을 이유로, 대부분의 DBMS는 적당히 미리 기록하는 메커니즘을 사용한다.


== 결론 ==
==결론==
* 일반적인 DBMS는 No-Force, Steal 사용
 
* 일반적인 트랜잭션 속성과 어긋나게 동작함을 표현하기 위해 No-Force, Steal 사용
*대부분의 DBMS는 No-Force, Steal 사용
**즉, Redo와 Undo 사용 필요
*일반적인 트랜잭션 속성과 어긋나게 동작함을 표현하기 위해 No-Force, Steal 사용

2022년 5월 8일 (일) 13:44 기준 최신판


트랜잭션 처리 시 데이터 기록에 관한 옵션

Force[편집 | 원본 편집]

트랜잭션이 완료된 후 바로 데이터를 디스크에 기록할 것인가?
  • Force: 바로 기록한다
  • No-Force: 바로 기록하지 않는다(Redo 필요)

트랜잭션이 완료되었으므로 당연히 기록할 것 같지만 성능 효율 등을 이유로, 대부분의 DBMS는 적당히 기록해야 할 때 기록하는 메커니즘을 사용한다.

Steal[편집 | 원본 편집]

트랜잭션이 완료되지 않은 상태에서 데이터를 디스크에 기록할 것인가?
  • Steal: 기록한다(Undo 필요)
  • No-Steal: 기록하지 않는다

트랜잭션이 완료되지 않았으므로 당연히 기록하면 안될 것 같지만 성능 효율 등을 이유로, 대부분의 DBMS는 적당히 미리 기록하는 메커니즘을 사용한다.

결론[편집 | 원본 편집]

  • 대부분의 DBMS는 No-Force, Steal 사용
    • 즉, Redo와 Undo 사용 필요
  • 일반적인 트랜잭션 속성과 어긋나게 동작함을 표현하기 위해 No-Force, Steal 사용