DB Query Processing의 기본 단계

- Parsing and translation 변환 : query → Relational-algebra 표현식으로 변환
- Optimization 최적화 : Query plan optimizer가 단항, 이항 연산자들을 이진 트리로 변환 ⇒ query evaltion plan(더 효율적인 plan으로 최적화해줌)
- Evaluation 평가 : DB엔진에 다시 넣어서 query plan을 실행하고 query에 대한 답(output) 생성
Optimziation

Query를 평가하기 위한 연산의 일련의 순서를 query evaluation plan이라한다.
- 순서에 따라서 salary < 75000인 튜플을 먼저 선정할수도 나중에 선정할수도 있다.
📌 Query Optimization
: 모든 query plan 중에서 가장 작은 cost를 동반하는 plan을 고르는 것을 의미한다.
- cost : 튜플의 갯수, 튜플의 사이즈 등등..
Measures of Query Cost
쿼리 코스트는 쿼리에 대한 답을 내는데 걸리는 총 시간을 의미한다. → 보통 CPU, disk 접근에 영향받음
- 디스크 접근은 주요 cost고, 측정하기 쉽다. (CPU는 명확성을 위해 무시함)
📌 Disk Access
- seek 횟수
- block read 횟수
- block write 횟수(read보다 더 크다)
⇒ 하지만, 명확성을 위해 Query cost를 다음 2가지만 고려할 것 이다.