**Оптимизация запросов в реляционной СУБД** - это такой способ разработки запросов, когда по его начальному представлению вырабатывается процедурный план его выполнения, наиболее оптимальный для существующих в БД управляющих структур.  
![Обработка запроса](../Pictures/11_01.%20Обработка%20запроса.png)  
1. Запрос подвергается **лексическому** и **синтаксическому анализу**, при этом вырабатывается **внутреннее представление** - оно отражает структуру запроса и характеризует объекты БД. Эта информация выбирается из каталогов БД.
2. При **логической оптимизации** запрос подвергается преобразованиям, улучшающим его. Преобразования бывают эквивалентные, семантические (т. е. новое представление не является эквивалентным начальному, но гарантируется, что результат выполнения совпадает с запросом в начальной форме). Внутреннее представление остается непроцедурным, но уже стремится к этому.
3. Выбираются **альтернативные процедурные планы**. Для каждого плана оценивается стоимость выполнения запроса на основе статистической информации о состоянии БД. Из них выбирается самый "дешевый". 
4. Из оптимального плана формируется выполняется **выполняемое представление запроса**. Оно может быть и программой в машинных кодах, и машинно-независимым - более удобным в интерпретации.
5. **Реальное выполнение запроса** - это либо выполнение программы, либо вызов интерпретатора и передача ему плана