Сегодня - день подчищенных хвостов.
Цитата:
Сообщение от
Alexius
Цитата:
Сообщение от
mazzy
Они похоже не думали, что MS SQL прекращает всякую оптимизацию запроса, если в нем присутствует больше 8 таблиц.
А можно поподробнее про это ограничение MS SQL ?
Цитата:
Сообщение от
Vezunchik
не мог не сдержаться, даже зарегистрировался изза этого, но
можно указать где это написано? а то кросспостинг на свои же сообщения (нет оптимизации запросов, когда таблиц больше 8) это конечно замечательно, но не убедительно.
или ктото в аксапте сказал что так, и все как заводные повторяют?
Во-первых, приношу свои извинения, что не нашел подтверждения своим словам.
Потратил 4 часа на поиск. (Спасибо, прочитал и отложил для последующего чтения много чего интересного). Но подтверждения не нашел. Ни на этом форуме, ни в msdn. внес комментарий в
исходное сообщение
Единственное, что нашел более-менее похожее
Цитата:
В каждой базе данных имеется встроенный набор интеллектуальных алгоритмов, которые выбирают наиболее оптимальный способ исполнения запроса. К примеру, для сложного запроса на основе объединения 8 разных таблиц оптимизатор может потратить целых 30 минут на выбор оптимального решения, прежде чем сервер начнет исполнение запроса. Для этих целей сервер применяет один из двух типов оптимизации: на основе стоимости затрат (cost-based) или на основе правил (rule-based). Эта статья целиком посвящена оптимизатору на основании издержек.
http://www.sql.ru/articles/oracle/20...L_Tuning.shtml
Но я согласен с тем, что это не значит, что "оптимизатор прекращает"
Про оптимизацию запросов
http://ru.wikipedia.org/wiki/%D0%9E%...A3%D0%91%D0%94
http://ru.wikipedia.org/wiki/%D0%A1%...A3%D0%91%D0%94
Но на самом деле, я не думаю, что моя ошибка сильно влияет на результаты в рамках темы данного топика. Если говорить про платформу 1С, то платформа 1С любит генерить сложные запросы типа таких
http://www.sql.ru/forum/actualthread...d=90395#659099
Программист 1С сам того не желая, легко получит такие запросы.
В то время, как в Аксапте нужно очень сильно постараться и поизвращаться, чтобы сделать такие запросы.
В общем, по-моему исходный тезис не меняется. 1Cу еще работать и работать
===========================
Заодно нашел дополнительные интересные ссылки для 1Сников от Гилева
http://www.gilev.ru/1c/81/index/optimquery.htm
а также
Старайтесь избегать использования сложных TVF и табличных переменных
Цитата:
Содержащие много операторов и возвращающие табличные значения функции (table-valued functions, TVF) не имеют статистики. Поэтому оптимизатор вынужден угадывать размер их результирующего набора. Аналогично, табличные переменные тоже не имеют статистики, и оптимизатор может только догадываться о количестве их элементов. Если в результате использования табличных переменных или табличных функций Вы получаете плохой план исполнения запроса, рассмотрите возможность замены их на обычные таблицы или на временную таблицу, используя их как временное хранилище для результатов, которыми оперируют такие TVF. Это позволит оптимизатору использовать более качественные оценки числа элементов.
и т.д