SQLP

시험 직전 요약장

판단 기준과 헷갈리는 개념, 대표 예제를 짧게 확인하세요.

이론 목록

Bind Variable과 실행계획: Bind Peeking·Adaptive Cursor Sharing

원래 이론 →

판단 기준

V$SQL_CS_STATISTICS는 Oracle이 Bind-Aware 여부를 판단할 때 참고하는 표본 실행의 처리 행 수, Buffer Gets와 CPU 정보 등을 요약합니다.

확인할 수 있는 대표 내용은 다음과 같습니다.

  • Bind Set이 Cursor 생성에 사용되었는지
  • 처리한 Row 수
  • Buffer Gets
  • CPU 사용량
이 부분의 원문 →

헷갈리는 개념

혼동하기 쉬운 판단정확한 기준
Bind Variable이면 항상 하나의 Child만 사용한다ACS와 호환성 차이로 여러 Child가 존재할 수 있다
Bind Peeking은 매 Execute마다 수행된다관련 Hard Parse에서 수행되며 Soft Parse는 기존 Plan을 재사용한다
첫 번째 Bind 값만 영구히 Plan을 결정한다ACS가 실행 결과를 관찰해 선택도 범위별 Plan을 만들 수 있다
Histogram이 있어야만 Bind-Sensitive가 된다Histogram은 추정에 도움을 주지만 유일한 필수 조건은 아니다
Bind-Sensitive이면 여러 Plan을 이미 사용한다값별 Plan 필요성을 관찰하는 단계다
Bind-Aware이면 모든 Bind 값마다 Child를 만든다기존 선택도 범위를 재사용하고 같은 Plan은 Cursor Merging할 수 있다
Child가 여러 개면 모두 ACS다Bind Metadata와 환경 공유 실패도 확인해야 한다
ACS와 CURSOR_SHARING은 같은 기능이다ACS는 Bind별 Plan 선택, CURSOR_SHARING은 SQL Text 공유 정책이다
FORCE는 Parse Call도 제거한다Parent 공유와 Hard Parse는 줄일 수 있지만 Parse 요청은 남는다
FORCE를 사용하면 SQL Injection이 해결된다안전한 Application Bind API가 필요하다

이 부분의 원문 →

내 최근 연습 오답

현재 브라우저의 연습 채점 기록에서 공개된 단원과 연결된 오답을 확인합니다.

학습 기록 →

오답 기록을 확인하고 있습니다.