리두로그버퍼에는 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
Posted by 겨울섬
,