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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.11.2002, 11:18   #1  
Maxi is offline
Maxi
Участник
 
30 / 10 (1) +
Регистрация: 03.09.2002
Адрес: Russia
Angry Временные индексы
После создания временного индекса все действия по изменению состояния таблицы (в частности выполнение Update) замедлилась в десятки раз...Есть какое-нибудь решение?
Старый 18.11.2002, 11:33   #2  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
Не очень понял, что значит временный индекс? На временной таблице что ли?
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Старый 18.11.2002, 12:40   #3  
SimPai is offline
SimPai
MCTS
MCBMSS
 
105 / 10 (1) +
Регистрация: 22.05.2002
Адрес: Москва
Ваш UPDATE теперь будет обновлять не просто данные в таблице но и в новом индексе. Очевидно, что это будет занимать времени больше. Однако, то что это происходит в десятки раз медленнее выглядит ненормально. Чтобы исправить ситуацию сделайте следующее:
  • проверте оценочную "стоимость" улучшения производительности индекса
  • обновите статистику таблицы или выполните переиндексацию
  • если это кластерный индекс оцените возможность сделать его не кластерным
  • проверьте целостность БД
Удачи.
Старый 21.11.2002, 09:15   #4  
Maxi is offline
Maxi
Участник
 
30 / 10 (1) +
Регистрация: 03.09.2002
Адрес: Russia
?
Дело в том, что переиндексацию выполнить не представляется возможным, т.к. индекс создается на несколько операций, после чего удаляется, на то он и временный... Причем, пока он не удален замедляется вся работа системы, а не только той функции дял которой он создан...
Можно ли как-нибудь отключить обновление временного индекса, т.к. актуальность его важна только на момент создания (это происходит быстро), а в процессе работы уже нет необходимости, чтобы он был корректным.
Старый 21.11.2002, 13:10   #5  
SimPai is offline
SimPai
MCTS
MCBMSS
 
105 / 10 (1) +
Регистрация: 22.05.2002
Адрес: Москва
Индекс создаётся только для проведения операции UPDATE? Вы уверены, что это необходимо? К тому же Вы явным образом указываете использование этого индекса или нет?
То что тормозят все операции, вероятно, связано с тем что этот индекс сделан по большой и часто используемой таблице.
Кстати, обновление статистики не помешает в любом случае, особенно если наблюдается постоянная загруженность процессора.
Попробуйте провести трассировку операций при использовании индекса и без него. Проанализируйте результаты трассировки и посмотрите на рекомендации
Index Tuning Wizard.
Дополнительно можно "поиграть" параметром FILLFACTOR при создании индекса.
Удачи.

Кстати, а в чём смысл идеи с индексом?
Старый 22.11.2002, 14:46   #6  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано SimPai
если это кластерный индекс оцените возможность сделать его не кластерным
Ух, ты. А почему?
А можешь ссылку дать на обоснование этого тезиса?
Это для MS SQL или для Оракла
Старый 25.11.2002, 09:10   #7  
SimPai is offline
SimPai
MCTS
MCBMSS
 
105 / 10 (1) +
Регистрация: 22.05.2002
Адрес: Москва
Обновление кластерного индекса более трудоёмкая операция, чем простого индекса, а в данном случае этого необходимо избежать.
Это для MS SQL (полагаю и для Oracle тоже).
Старый 25.11.2002, 10:04   #8  
Maxi is offline
Maxi
Участник
 
30 / 10 (1) +
Регистрация: 03.09.2002
Адрес: Russia
А можно вообще отключить обновление индекса?
Старый 25.11.2002, 12:40   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано SimPai
Обновление кластерного индекса более трудоёмкая операция
А, вот ты о чем.... Понял.
Зато выборка на значительно быстрее.

Согласен, надо думать.
Старый 25.11.2002, 13:23   #10  
SimPai is offline
SimPai
MCTS
MCBMSS
 
105 / 10 (1) +
Регистрация: 22.05.2002
Адрес: Москва
К Maxi :
Цитата:
А можно вообще отключить обновление индекса?
А зачем такой индекс (не обновлённый) вообще нужен? Может есть смыл сначала провести обновление, а затем составлять индекс или вообще обойтись без него?
Старый 25.11.2002, 13:28   #11  
SimPai is offline
SimPai
MCTS
MCBMSS
 
105 / 10 (1) +
Регистрация: 22.05.2002
Адрес: Москва
Да, ещё - обновление индексов отключить не получиться.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Не удалять индексы при синхронизации Logger DAX: Администрирование 18 03.04.2007 17:45
Oracle - снова индексы Bars DAX: Программирование 19 23.03.2006 15:31
Временные таблицы должны быть вложенными (inner)... Deep Dreamer DAX: Программирование 14 08.09.2005 16:23
При каждом обращении строит индексы в Old nicko DAX: Администрирование 0 16.02.2005 08:57
Временные таблицы в запросе Dron AKA andy DAX: Программирование 4 06.09.2002 12:14

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

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

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