AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.09.2010, 10:48   #8  
cacadu is offline
cacadu
Участник
 
3 / 10 (1) +
Регистрация: 27.02.2009
Цитата:
Сообщение от Arahnid
6. Пишу тот же запрос за 31.12.2010. Данных нет. Запрос вначале выполняется за 0:01:49. Повторно 0:00:11 или 0:0:01.
Цитата:
Сообщение от Arahnid
Статистика по полю, которое я суммирую, обновилось последний раз вчера? Это плохо или это не о чем не говорит?
Важна статистика не по полю, которое вы суммируете, а по полю, в котором хранится дата (поле, на которое накладывается условие).
Сервер анализирует статистику по полям, ограничивающим запрос, что бы сформировать оптимальный план запроса.

Ваш случай (запрос данных за 31.12.2010) напоминает тот, что был у меня.

Таблица, на которой были проблемы - постоянно растущий лог, 40 млн. записей.
Запрос выбирал записи за текущий день. Сервер не обновлял статистику автоматически, т.к. "считал", что изменения таблицы за день незначительны, и в %-ом отношении так и было - лог за 3 года, изменения за день составляли ~0,1%.

В результате из-за "кривой" статистики сервер не "видел", что за текущую дату данных очень мало, и делал FULL SCAN таблицы. При этом первое выполнение запроса приводило к загрузке большей части таблицы с диска в память (что занимало несколько минут), а последущие выполнения этого же запроса занимало существенно меньше времени (данные уже были в памяти). Через некоторое время данные из памяти (кеш) исчезали, и запрос снова начинал выполняться долго.
При этом же такой же запрос, но за другую дату, выполнялся моментально, т.к. на эту дату была корректная статистика, и вместо FULL SCAN использовался INDEX SEEK.

Побороли принудительным сбором статистки, выполянемой рано утром (что бы гарантировать, что в статистике будут отражены данные за текущий день).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Connection к другому SQL Server Poleax DAX: Программирование 5 19.10.2010 10:49
Dynamics AX: SQL Server, Heart of Dynamics AX Blog bot DAX Blogs 0 13.07.2007 18:00
aEremenko: Диагностика проблем при установке Microsoft Dynamics Ax 4.0 на Microsoft SQL Server 2005 Blog bot DAX Blogs 0 28.10.2006 16:01
SQL запросы в контроле доступа на уровне записей SDA DAX: Программирование 2 15.10.2004 09:55
Сложные SQL запросы Alks DAX: Программирование 8 19.08.2004 10:58

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 08:00.