Как правило, ошибки при планировании вызваны некорректной оценкой
кардинальности. Частая причина этого — неактуальная статистика
планировщика. Например, в OLTP-системах это может быть вызвано
устареванием статистики из-за часто изменяющихся данных,
неравномерным распределением или использованием подготовленных
запросов с параметрами (когда оптимизатор переключается на общий
план выполнения).
Если в процессе выполнения запроса обнаруживается, что показатели
значительно отличаются от ожидаемых, можно прервать выполнение и
произвести планирование повторно, воспользовавшись накопленными
в процессе выполнения дополнительными данными. Для этого
необходимо настроить желаемые условия перепланирования.
Перепланирование запросов в реальном времени особенно актуально
для тяжелых аналитических OLAP-запросов, для которых накладные
расходы на перепланирование будут относительно невелики.
Перепланирование можно использовать и для проблемных OLTP-
запросов.
3
Проблема и решение
Ошибки в оценке кардинальности
статистика устаревает из-за частых изменений данных
неравномерное распределение данных
параметризованные запросы и подготовленные операторы
При сильном несоответствии
выполнение прерывается
запрос планируется повторно с учетом полученных данных
Классы запросов
тяжелые аналитические OLAP-запросы
проблемные OLTP-запросы