|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
ASE 15 Отчего временные таблицы тормозят, т.е. не используют индексы? Тот же запрос с обычной таблицей - летает, а с временной - дикие тормоза! При этом индексы созданы, в запросе прописаны. Во временной всего 5 записей, она в запросе связана с обычной большой таблицей. Если вместо временной написать конструкцию IN (val,val,...,val), то тоже летает. Ну 5 вшивых записей, numeric поля, чему тут тормозить? Никакие SET PLAN не помогают... Главное раньше всё работало, потом что-то изменилось. У админов спрашивать безтолку, у них всё зашибись... Раньше перешли с 12.5 на 15, временные начали тормозить, но стоило им создать индекс и всё опять бегает быстро, а теперь и с индексом затормозили. Что это может быть? Это в процедурах и при выполнении больших скриптов целиком. А если скрипт выполнять вручную пошагово: create, insert, create index, select то всё работает! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 15:12 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
При выполнении скрипта пишет: Index 'RecAcc_indx' specified as optimizer hint in the FROM clause of table '#RecAcc' does not exist. Optimizer will choose another index instead. Но другого индекса там нет, и всё висит... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 15:18 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
W357, перекомпилите процедуру ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 16:47 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
А скрипт то я сейчас выполняю, почему в нём индексы не создаются? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 17:04 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
W357А скрипт то я сейчас выполняю, почему в нём индексы не создаются? раздели стейтменты создания посредством GO ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 17:12 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
перекомпил процедуры не помогает... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 17:23 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
Насколько я помню по 12 ase, для хинтов на использование индекса во временных таблицах нужно указывать не имя индекса, а его номер. (index 1), к примеру. Этот номер можно получить из sysindexes. Возможно, для 15-го не изменилось. Проверить не могу, не на чем. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 17:36 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
Решилась проблема. В той процедуре был цикл, и таблица заполнялась в цикле, каждый раз чистилась и вновь заполнялась. Индекс создавался снаружи цикла, до заполнения таблицы, поэтому он и не создавался... идиотская оптимизация сайбаса... Тупо написал "инсерт #табле валюэс (1)" перед созданием индекса и заработало. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 19:53 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
W357 wrote: > В той процедуре был цикл, и таблица заполнялась в цикле, каждый раз > чистилась и вновь заполнялась. Индекс создавался снаружи цикла, до > заполнения таблицы, поэтому он и не создавался... идиотская оптимизация > сайбаса... Индекс-то не мог не создаваться. Другое дело, его оптимизатор не брал потому как статистики не было. Т.е. была, но на пустую таблицу. А по пустой таблице индекс бессмысллено использовать. > Тупо написал "инсерт #табле валюэс (1)" перед созданием индекса и > заработало. Форсануть -то индекс по любому можно было бы. Дело не в том, что он не создавался, а что оптимизатор его не брал в расчёт как полезный. Кстати, даже после наполнения временной таблицы не факт, что индекс по временной таблице реально полезен. Если она самая внешняя в запросе и по ней нет SARG-ов, то и никакого индекса особенно не нужно. Posted via ActualForum NNTP Server 1.4 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2010, 23:55 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
По моему, глупо не брать в расчёт индекс по единственному полю в таблице, если других индексов вовсе нет и без индексов дико тормозит. Это пожелания писателям оптимизатора. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.10.2010, 07:24 |
|
Тормозят временные таблицы
|
|||
---|---|---|---|
#18+
W357По моему, глупо не брать в расчёт индекс по единственному полю в таблице, если других индексов вовсе нет и без индексов дико тормозит. Это пожелания писателям оптимизатора. И совсем не глупо ... |
|||
:
Нравится:
Не нравится:
|
|||
07.10.2010, 10:25 |
|
|
start [/forum/topic.php?fid=55&msg=36883435&tid=2010518]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
72ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
others: | 324ms |
total: | 492ms |
0 / 0 |