SQLP

시험 직전 요약장

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

이론 목록

적응형 최적화: Adaptive Plan·Statistics Feedback·Adaptive Cursor Sharing

원래 이론 →

판단 기준

Adaptive Query Plan은 최초 최적화 시점에 일부 지점에 대안 Subplan과 Optimizer Statistics Collector를 포함합니다.

도식
Adaptive Plan 후보
  ├─ Subplan A: Nested Loops Join
  └─ Subplan B: Hash Join
           ↑
  Statistics Collector가 실제 Row 수 관찰
이 부분의 원문 →

헷갈리는 개념

구분Adaptive Query PlanStatistics FeedbackAdaptive Cursor Sharing
관찰 대상현재 실행의 중간 Row 수와 실행 통계E-Rows와 A-Rows의 차이Bind 값별 선택도와 실행 특성
적용 시점현재 Statement 실행 중실행 완료 후 재최적화여러 Bind 실행을 관찰한 이후
Plan 형태미리 포함된 대안 Subplan 중 하나를 활성화보정 Cardinality로 새 Plan 생성 가능같은 SQL에 여러 Child Cursor·Plan 가능
첫 실행 효과첫 실행 중 대안 선택 가능첫 실행 완료 후 정보가 생성되므로 소급 적용 불가처음부터 모든 값의 최적 Plan이 준비되는 것은 아님
대표 목적Join Method·병렬 분배·Bitmap Pruning 등의 실행 중 결정Cardinality 추정 오류 보정데이터 편중이 큰 Bind SQL의 Plan 선택
Object Statistics 변경변경하지 않음직접 변경하지 않음변경하지 않음
주요 확인DBMS_XPLAN의 ADAPTIVE 형식과 inactive Row SourcePlan Note의 Statistics Feedback 사용 여부V$SQL과 V$SQL_CS_* View

이 부분의 원문 →

대표 계산·예제

옵티마이저가 선행 Row Source를 100행으로 예상했다고 가정합니다.

도식
예상 100행
  → Nested Loops Join 후보가 유리

실행 중 실제 Row 수가 내부 Threshold를 크게 초과하면 준비된 Hash Join Subplan을 선택할 수 있습니다.

도식
실제 500,000행
  → 준비된 Hash Join Subplan 선택
  → Nested Loops 관련 Row Source 비활성화

Adaptive Query Plan은 Join Method뿐 아니라 버전과 설정에 따라 병렬 분배 방식이나 Star Transformation의 Bitmap Index Pruning 같은 결정에도 사용될 수 있습니다.

이 부분의 원문 →

내 최근 연습 오답

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

학습 기록 →

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