문제
다음 상황에서 CBO가 인덱스를 사용하지 않고 테이블 전체 스캔을 선택할 가능성이 가장 높은 경우는?
① 테이블에 1,000건의 데이터가 있고, WHERE 조건으로 500건이 조회되는 경우 ② 테이블에 100,000건의 데이터가 있고, WHERE 조건으로 10건이 조회되는 경우 ③ 인덱스의 선택도(Selectivity)가 0.01인 경우 ④ 테이블에 10,000건의 데이터가 있고, WHERE 조건으로 9,500건이 조회되는 경우
정답
4번
해설
④ CBO는 비용을 계산하여 실행 계획을 결정하는데, 전체 데이터의 95%를 조회하는 경우 인덱스를 통한 랜덤 액세스보다 테이블 전체 스캔이 더 효율적이라고 판단할 가능성이 높습니다. ① 50% 조회는 경계선상이지만 인덱스 사용 가능성이 있습니다. ② 0.01%만 조회하므로 인덱스 사용이 효율적입니다. ③ 선택도 0.01은 매우 좋은 선택도로 인덱스 사용에 유리합니다.