SQLP

시험 직전 요약장

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

이론 목록

Index Join과 Bitmap Conversion: 여러 인덱스의 ROWID 결합

원래 이론 →

판단 기준

예시·텍스트
1. WHERE·JOIN·SELECT·ORDER BY Column을 분류한다.
2. 기존 Index별 제공 Column·ROWID·크기를 확인한다.
3. 가장 선택적인 단일 Index + Table Access를 계산한다.
4. Index Join이 Query 전체를 Cover하는지 확인한다.
5. Bitmap AND·OR 후 후보 감소율을 예상한다.
6. 복합 Index·Full Scan·OR Expansion을 비교한다.
7. ALLSTATS LAST로 Index·Hash·Bitmap·Table 비용을 측정한다.
8. Workarea·TEMP·동시 Session의 PGA를 확인한다.
9. 신규 Index의 DML·Redo·공간과 다른 SQL 회귀를 측정한다.
10. 동일 Bind·Fetch·동시성에서 최저 전체 Workload 비용을 선택한다.

이 부분의 원문 →

헷갈리는 개념

기준Index JoinBitmap Conversion
결합 방식ROWID Hash JoinBitmap Boolean 연산
주요 목적여러 Index로 Query Cover후보 ROWID 집합 축소
Table Access공식 정의상 항상 제거필요 Column에 따라 발생
대표 PlanVIEW index$_join$ + HASH JOINBITMAP CONVERSION FROM/TO ROWIDS
주요 자원Index Scan·PGA Hash·TEMPIndex Scan·Bitmap CPU·Memory·ROWID 변환
AND 조건ROWID Hash Join 교집합BITMAP AND
OR 조건일반적인 Index Join 목적과 다름BITMAP OR에 자연스러움
대안Wide Covering Index·단일 Index복합 Index·OR Expansion·Full Scan

Index Join은 여러 Index Column을 조합해 Projection까지 완성하고, Bitmap Conversion은 집합 조건을 조합해 후보를 줄이는 데 초점을 둡니다.


이 부분의 원문 →

대표 계산·예제

Oracle의 Index Join Scan은 같은 Table의 여러 Index를 읽고, 얻은 ROWID를 Hash Join하여 Query가 요청한 모든 Column을 반환하는 Access Path입니다.

예시·텍스트
VIEW index$_join$_001
  HASH JOIN
    INDEX RANGE SCAN CUSTOMER_REGION_IX
    INDEX RANGE SCAN CUSTOMER_GRADE_IX

핵심 결합 Key입니다.

예시·텍스트
ROWID = ROWID

업무 Column customer_id가 두 Index에 존재하더라도, 같은 물리 Table Row를 식별하는 내부 Join 기준은 ROWID입니다.

이 부분의 원문 →

내 최근 연습 오답

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

학습 기록 →

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