by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

log buffer space II




1. log buffer space

1) 이벤트 원인

  • 리두 버퍼에 리두 레코드를 기록하려는 프로세스는 리두 버퍼내에 필요한 공간을 확보하기 위해 'redo allocation' 래치를 획득해야 함.
  • 'redo allocation' 래치 획득 후, 리두 버퍼에 공간을 확보하려고 할 때 여유 공간이 없을 경우, 공간 확보되기를 기다려야 함.
  • 이 때 아래의 내용처럼 2가지 대기이벤트를 대기함.
    log file switch completion ☞ LGWR은 'log file switch'를 수행하고, 서버 프로세스는 'log file switch completion' 이벤트 대기.
    log buffer space ☞ 'log file switch completion' 이벤트 이외의 경우 'log buffer space' 이벤트 대기.
    ☞ 'log file switch'가 끝난 직후, 'log buffer space'가 한꺼번에 증가하는 현상 생길 수 있음.
    ☞ 이는 리두 버퍼에 기록을 하려는 다수의 세션들이 'log file switch'가 끝나기를 기다렸다가, 한꺼번에 리두 버퍼에 기록을 하기 위해 경쟁하기 때문.

2) 해결방안

① 'log buffer space' 대기 이벤트가 광범위하게 나타날 경우
  • 리두 버퍼의 크기가 너무 작지 않은지 조사해 보아야 하며, 작을 경우 충분히 늘려줘야 함.
② 'log buffer space', 'log file switch completion' 2개의 대기 이벤트가 광범위하게 나타날 경우
  • 리부 버퍼의 크기와 함께 리두 로그 파일 크기의 적합성을 의심해 보아야 함.

2. log file switch etc

1) log file switch completion

  • 서버 프로세스가 리두 버퍼에 리두 레코드를 기록하려는 시점에 리두 로그 파일이 꽉 차서 더 이상 쓰기를 할 수 없을 경우, 프로세스는 LGWR에게 'log file switch'를 수행할 것으로 요청.
  • 서버 프로세스는 LGWR에 의해 로그 파일 스위치가 끝날 때까지 'log file switch completion' 이벤트를 대기함.
  • 만약, 'log file switch'가 끝나는 시점에, 새로 사용할 리두 로그 파일에 대해 아직 종료되지 않은 작업이 있을 경우, 아래의 추가 이벤트 대기함.

2) log file switch(checkpoint incomplete)

  • 새로 사용할 리두 로그 파일에 대한 체크포인트 작업이 아직 끝나지 않았다면 프로세스는 DBWR에 의해 체크포인트가 끝나기를 대기해야 함.
  • 이 때, 'log file switch(checkpoint incomplete)' 이벤트 대기.

3) log file switch(archiving needed)

  • 새로 사용할 리두 로그 파일에 대해 'Archive' 작업이 아직 끝나지 않았다면, 프로세스는 ARCH 프로세스에 의해 'Archive' 작업이 끝나기를 대기해야 함.
  • 이 때 'log file switch(archiving needed)' 이벤트를 대기하며, 이 이벤트는 'Archive' 모드의 DB에서만 발생.

4) log file switch(private strand flush incomplete)

  • 새로 사용할 리두 로그 파일에 대해 'private strand'에 대한 'flush' 작업이 아직 끝나지 않았다면, 이 작업이 끝나기를 대기해야 함.
  • 이 때, 'log file switch(private strand flush incomplete)' 이벤트를 대기하며, 10gR2부터 추가됨.

5) 해결방안

  • 발생 원인은 트랜잭션이 생성하는 리두 데이터의 양에 비해 리두 로그 파일의 크기가 지나치게 작기 때문.
  • 따라서 해결책은 리두 로그 파일의 크기를 충분히 늘려주어야 하며, 추가로 'Direct load operation', 'Nologging' 옵션을 사용하여 리두 데이터의 양을 줄여야 함.

문서에 대하여

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.