리두로그버퍼에는 3가지 래치가 존재한다. 이 래치라는 것은 메모리에 관한 Lock 메커니즘인데 자원 획득을 위함이다.
◆ Redo Allocation Latch
- 하나만 존재
- 리두로그버퍼에 공간만 할당
- 은행에서 번호표와 같은 개념. 이 번호표가 있어야만 리두로그버퍼에 쓸 공간을 획득할 수 있다.
◆ Redo Copy Latch
- 리두로그버퍼에서 Writing을 담당
- LOG_SIMULTANEOUS_COPIES 파라미터에 의해 개수 결정
- 개수 즈가는 LGWR의 Waiting을 증가시킬 수 있음.
- 은행에서 번호표대로 업무를 수행해주는 은행원과 같은 개념.
◆ Redo Writing Latch
- 리두로그버퍼에 Free Space가 존재하지 않을 경우 사용
- 해당 래치를 획득한 하나의 프로세스만이 LGWR에게 내려쓰라고 지시 가능함
- 새로운 프로세스가 해당 래치를 획득한 후 가장 먼저 LGWR이 리두로그버퍼에 Free Space를 만들었는지를 재확인한 후 Free Space가 없다면 LGWR을 기동함.
● Redo Generation
'오라클 > 인터널' 카테고리의 다른 글
[인터널] Redo 아키텍처 (0) | 2010.09.13 |
---|