Форум: "Прочее";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];
ВнизМожно ли как-то управлять кэшем mssql server? Найти похожие ветки
← →
12 © (2009-12-30 09:56) [0]Не знаю, правильно ли думаю, может и нет, и вообще может "хочу странного"
к чему:
знаю какие запросы и процедуры пользователям сейчас понадобятся, потому что это изо дня в день они однотипные, судя по наблюдениям
Допустим, после 10-11 часов всем резко стали нужны одни процедуры, все начинают их вызывать, они потихоньку перекомпилируются, перелезают в кэш - и наблюдается убыстрение через какое-то время
Через пару часов все перекидываются на другое действие, начинает притормаживать, потом опять стабилизируется
что если это дело упредить, ручками актуальные заставить залезть в кэш (и запретить выгружаться 3-4 из них), то думаю, что быстродействие ускорится
собственно, перекомпилировать как - знаю
sp_recompile ""( а перед этим sp_updatestats еще желательно)
+ Замечено, что после пары вызовов, SP заметно быстрее начинает отрабатывать. У того юзера, кто вызывал. Но у другого юзера первый раз опять что-то долго(или это субъективно?).
Как бы сделать так, чтоб я запускаю некий скрипт, и у всех в кэше есть некий набор процедур. +Пара из них становится вообще невыгружаемыми ни при каких условиях
← →
sniknik © (2009-12-30 10:17) [1]имхо, какой то неправильный подход... не с той стороны. не знаю возможно ли управление кешем (думаю вряд ли), но делал бы не так.
у тебя же процедуры, в них ты можешь что угодно, так почему не сделать пред расчет с сохранением результатов во временной таблице, и после при одинаковых параметрах просто не выдавать его? это будет гораздо эфективнее чем разница между кешированной процедурой и нет.
← →
12 © (2009-12-30 10:26) [2]
> при одинаковых параметрах просто не выдавать его
??
in byte, а return getdate()
или, еще лучше
in дата, а return sum(деньги за дату). Утром, вечером, через секунду, при условий что кто-то в эту секунду заплатил - совершенно разный резулт
но мысль не лишена смысла :), наверное, некоторые так возможно будет переделать
← →
Рамиль_ (2009-12-30 10:49) [3]А что мешает за пол часика до часа X выполнить, то что должно закэшироваться?
← →
Petr V. Abramov © (2009-12-30 12:17) [4]
> Допустим, после 10-11 часов всем резко стали нужны одни
> процедуры, все начинают их вызывать, они потихоньку перекомпилируются,
> перелезают в кэш - и наблюдается убыстрение через какое-
> то время
думаю, тут ключевое слово потихоньку "перекомпилируются". Зачем они это делают? Почему их один раз не скомпилить и забыть?
← →
12 © (2009-12-30 12:40) [5]
> Почему их один раз не скомпилить и забыть?
Что бы использовать правильные планы запросов, нужна свежая статистика.
конечно, еще много проблем связанных примерно с таким вот
<-- PARAM
if PARAM THEN Сильный запрос на одних таблицах ELSE на других
первый раз компилится один план, а приходит параметр второй раз другим, существ.план уже не эффективен
> что мешает за пол часика до часа X выполнить, то что должно
> закэшироваться?
...
другие пользователи в это время выполнят свое, и кэш опять перезапишется
что хочу тогда..
Все однозначные и тяжелые процедуры (их не так много, не более 10), запретить выгружать из кэша до отмены такого распоряжения
← →
Ega23 © (2009-12-30 12:54) [6]Время составления плана запроса занимает ссущщие копейки по сравнению с затратами на передачу полученных данных адресату.
← →
Palladin © (2009-12-30 12:57) [7]чего чего делающие копейки? )
← →
Ega23 © (2009-12-30 13:00) [8]
> чего чего делающие копейки? )
Я так и знал.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2010.03.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c