13.08.2008, 12:34
|
#19
|
Участник
Регистрация: 28.11.2005
Адрес: Москва
|
Цитата:
Сообщение от sukhanchik
Плюс, в SQL Server реализован "интеллектуальный" построитель плана запросов. Оракл - он тупой. Нет индекса - full scan. Это дисциплинирует программиста и заставляет при написании выборки сразу задуматься об индексах.
Практика показывает, что Oracle "тупой" немного по-иному Индексы-то на таблицах есть почти всегда, так вот, Oracle подчас хватает совсем не те индексы, которые, бывает, специально ему под определенные запросы создаешь. Получается, конечно, не full scan, но на больших объемах - все равно слишком долго, причем выявляется это, порой, лишь на сопоставимой с рабочей по объему и наполнению тестовой базе, а то и вообще только на рабочей. Не зная настроек оптимизатора и конкретики собранной им статистики, очень сложно бывает "въехать", какого фига Oracle так тупит. И дисциплинирует это не столько программиста, сколько руководство - в плане того, что надо искать очень дорого Oracle DBA, который бы мог разруливать такие ситуации подкруткой весов различных параметров, используемых оптимизатором запросов, а не тупым прикручиванием outline'ов, которые слетают при любом изменении таблицы/запроса.
|
|