Спасибо, действительно, на query легко отключается ....
Но вопрос теперь в другом: если я анализирую запрос на строне sql server, то option fast оказывает большое влияние на скорость выполнения, а если отключаю на стороне аксапты - нет (я вижу в Trace parser, что запрос , действительно без хинта уходит).
Я могу это объяснить только так: аксапта не ждет пока все записи запрос выдаст, а просто вытягивает первые N , что достаточно для показа на форме(если пользователь начнет скроллировать, то подтянет следующую порцию). Поэтому, если даже запрос целиком на sql быстрее выполняется, то при option fast первые N записей медленного запроса появляются приблизительно также быстро, как без option fast. (странно, что option fast 4 на самом деле , получается, оптимизирует появление большего количества записей, чем 4)
Как тогда, вообще, оптимизировать ? Смотреть, какой запрос на top N будет быстрей на sql выполняться? что брать за N?
Последний раз редактировалось kitty; 01.02.2018 в 14:59.
|