Развитие идей и приложений реляционной СУБД System R


Оптимизация в System R - часть 5


Случаи выполнения соединения двух отношений более сложного вида (не эквисоединений) не рассматриваются в литературе по System R. Упоминается лишь, что для их выполнения применяются методы более сложные, но похожие на те, которые используются для выполнения эквисоединения.

Если в запросе участвуют несколько соединений, то рассматриваются только стратегии выполнения запроса на основе поочередного выполнения попарных соединений. При этом в плане выполнения запроса в качестве альтернатив рассматриваются все возможные порядки выполнения соединений. Из-за этого количество планов существенно возрастает, и тем самым увеличивается и время компиляции таких запросов.

Итак, на основе заложенных в текущий вариант системы методов выполнения запросов формируется множество возможных планов выполнения данного запроса. Затем для каждого из этих планов оценочный компонент оптимизатора вычисляет стоимость его выполнения в контексте текущего состояния базы данных (вернее сказать, текущей статистической информации), и для выполнения запроса выбирается план с наименьшей стоимостью.

Для оценки стоимости плана выполнения запроса в различных генерациях System R могут использоваться разные меры (в [19] рассматриваются оценки стоимости в денежной и временной мерах). В оценочных формулах фигурируют число обменов с внешней памятью, которые по оценкам оптимизатора потребуются при выполнении запроса по данному плану, и оценка процессорного времени, требующегося для выполнения запроса (при этом время оценивается предполагаемым числом обращений к RSS при выполнении запроса по данному плану). Число обменов и число обращений к RSS, встречающиеся в оценочных формулах, подгоняются под единую меру за счет использования соответствующих коэффициентов. Числовые значения коэффициентов зависят от выбранной меры стоимости. Например, если мерой выступает время выполнения запроса, то определяющей составляющей стоимости должно быть число обменов; при выборе денежной меры больший вес должно иметь время процессора.




Начало  Назад  Вперед



Книжный магазин