공부 이야기/ORACLE

[Oracle] BUFFER_POOL 기능에 대해서

mind: 2024. 5. 24. 20:40

1. SGA 영역에 테이블 혹은 세그먼트 등을 명시적으로 상주시킴으로써 데이터 엑세스 기능을 최적화할 수 있다.

ALTER TABLE table_name STORAGE (BUFFER_POOL KEEP);
ALTER INDEX index_name STORAGE (BUFFER_POOL RECYCLE);

 

2. KEEP, RECYCLE, DEFAULT 세 가지 옵션으로 나뉜다.

  1. DEFAULT Pool:
    • 데이터베이스에서 일반적으로 사용되는 데이터 블록이 저장
    • 모든 세그먼트에 대해 기본적으로 할당
  2. KEEP Pool:
    • 자주 참조되는 데이터 블록을 캐시에 오래 유지하기 위해 사용
    • 중요하거나 자주 액세스되는 데이터 세그먼트를 KEEP 풀에 할당하여, 해당 블록이 캐시에서 제거되지 않도록 함
    • 예시: 자주 조회되는 테이블이나 인덱스
  3. RECYCLE Pool:
    • 데이터 블록을 빠르게 캐시에서 제거하기 위해 사용
    • 덜 자주 참조되거나 일시적인 데이터 세그먼트를 RECYCLE 풀에 할당하여, 버퍼 캐시에서 빨리 제거될 수 있도록 함
    • 예시: 대량 데이터 로드 시 임시 테이블