В оптимизаторах DB2 используется основанная на стоимости модель, оценивающая стоимость ресурсов ввода-вывода и ЦП и затем образуя из этих оценок общую стоимость. В DB2 для MVS стоимость ресурсов ЦП нормализуется на основе скорости процессора. В DB2 для MVS соответствующие веса ввода-вывода и ЦП определяются при инсталляции системы путем замера времени выполнения небольших программ с известным числом команд, обращающихся к фиксированному числу страниц.
Оценочные формулы для ЦП получаются путем анализа числа команд, требуемых для различных операций, таких как получение страницы, вычисление предиката, переход к следующему элементу индекса, вставка во временную таблицу, разворачивание строки данных (это делается по одной строке) и т.д. Командная стоимость этих операций тщательно валидирована и является настолько же точной, как и оценки поведения ввода-вывода и размера результата.
Более сложно надежно оценить стоимость ввода-вывода. Должны делаться предположения о доступности пула буферов и кластеризации данных. Как правило, в DB2 для MVS предполагается, что для каждой конкретной таблицы доступен очень малый процент пула буферов. Однако, если имеется высокий уровень локальности ссылок (как во внутреннем индексе, возможно, во внутренней таблице соединения вложенными циклами или индексе внутренней таблицы при гибридном соединении), принимается более либеральное предположение о том, останется ли страница данных или индексная страница в основной памяти в течение выполнения запроса.
В DB2 для MVS индексные деревья имеют 3 или 4 уровня. Моделирование процентов удачи буферного пула для этих уровней является очень важным для клиентов, производящих оперативную обработку транзакций над большими (более 10M строк) таблицами. На ввод-вывод страниц данных влияют особенности запроса, размер пула буферов и степень кластеризации данных с общими значениями в страницах данных. В формулах для доступа к данным через отсортированный список RID’ов учитываются размер таблицы, степень кластеризации индекса и селективность предикатов на индексе.