A query is a declarative specification of “what” you want.
A query execution plan is an imperative program to produce the answer.
Query optimization: produce an efficient query execution plan.
Issues: large search space of plans, cost estimation, semantic transformations
Real goal: avoid the bad plans.