-
[Oracle] 오라클 DB 버퍼 캐시_(버퍼 상태)IT/etc 2022. 3. 31. 20:04
오라클 DB 버퍼 캐시_(버퍼 상태)
모든 캐시 버퍼는 아래 세가지 중 하나의 상태에 놓이게 된다.Free 버퍼 : 인스턴스 기동 후 아직 데이터가 읽히지 않아 비어 있는 상태(Clean buffer)이거나, 데이터가 담겼지만 데이터파일과 서로 동기화돼 있는 상태여서 언제든지 덮어 써도 무방한 버퍼 블록을 말한다. 오라클이 데이터 파일로부터 새로운 데이터 블록을 로딩하려면 먼저 Free 버퍼를 확보해야 한다. Free 상태인 버퍼에 변경이 발생하면 그 순간 Dirty 버퍼로 상태가 바뀐다.Dirty 버퍼 : 버퍼에 캐시된 이후 변경이 발생했지만, 아직 디스크에 기록되지 않아 데이터 파일 블록과 동기화가 필요한 버퍼 블록을 말한다. 이 버퍼 블록들이 다른 데이터 블록을 위해 재사용되려면 디스크에 먼저 기록되어야 하며, 디스크에 기록되는 순간 Free 버퍼로 상태가 바뀐다.Pinned 버퍼 : 읽기 또는 쓰기 작업을 위해 현재 액세스되고 있는 버퍼 블록을 말한다.※ 오라클 아키텍처에 대해 다시 Remind 하기 위해 2009년에 발간된 "오라클 성능 고도화 원리와 해법1" 을 책장에서 꺼내어 블로그로 옮겨 보았다.
'IT > etc' 카테고리의 다른 글
[Oracle] 오라클 Redo (0) 2022.04.02 [Oracle] 오라클 버퍼 Lock (0) 2022.04.01 [Oracle] 오라클 DB 버퍼 캐시_(캐시 버퍼 LRU 체인) (0) 2022.03.30 [Oracle] 오라클 DB 버퍼 캐시_(캐시 버퍼 체인) (0) 2022.03.29 [Oracle] 오라클 DB 버퍼 캐시 (0) 2022.03.28