Cost Model
Cost는 시간이 아니라 계획 비교용 추정값이다
Cost 100이 100ms를 뜻하지 않는다. 같은 DBMS와 환경에서 후보 계획을 비교하는 내부 상대값으로 읽는다.
요소
반영하는 비용
오해하면 생기는 문제
I/O
블록 읽기, 랜덤/순차 접근
인덱스가 항상 빠르다고 단정
CPU
필터, 정렬, 해시, 함수 계산
계산 많은 쿼리 과소평가
Memory
정렬/해시 영역, spill 여부
메모리 부족으로 실제 시간 급증
Cardinality
각 단계 예상 반환 행 수
조인 순서와 방법이 연쇄적으로 틀어짐