Как исчезает сложность?
Хотя имеется экспоненциальное число возможных вариантов перезаписи, мы ухитряемся произвести поиск наилучшего плана за два вызова оптимизатора: один – для нахождения наилучшей SIPS, а другой – для оптимизации запроса, перезаписанного на основе этой SIPS. Важно понимать, как исчезает исходная сложность; здесь нет никакой магии! В разд. 3.4 накладываются некоторые ограничения на исследуемое пространство поиска. Например, для примера из разд. 2 не будет оцениваться стоимость следующего варианта магической перезаписи: Dept используется как таблица PartialResult, и отфильтрованная версия представления LimitedDepAvgSal сначала соединяется с Emp, а потом с Dept. Другой используемый метод состоял в получении «хорошей оценки» стоимости параметризуемых планов вместо их явного вычисления. Хотя наши оценки являются, несомненно, приблизительными, это существенно лучше полного отсутствия оценок (а именно таково текущее состояние дел с алгоритмами, подобными магическим множествам). Коротко говоря, мы утверждаем, что, весьма вероятно, использование этих методов улучшит результаты сегодняшних оптимизаторов запросов. Реализация в системе баз данных DB2 C/S V2 эмпирически подтверждает верность этого утверждения.