|
|
|
Работа с индексами на временной таблице
|
|||
|---|---|---|---|
|
#18+
В процедуре работаю с временными таблицами и получаю следующую ситуацию. При работе в процедуре происходит наполнение временной таблицы данными (150000-250000 строк), по ним потом производятся большие выборки. Для упрощения этих выборок я создаю дополнительные индексы на этой таблице. Всего индексов 3 - один кластерный составной и два некластерных. Естественно, с индексами запросы проходят быстрее. Теперь о заполнении. Если я создаю таблицу и пока еще не заполнил ее данными, создаю все индексы на ней, а потом заполняю данными, то это по времени дольше, чем если бы я создал таблицу, заполнил, а только потом. на заполненной таблице, навесил индексы. Получилась дурацкая ситуация, создаю таблицу, заполняю под завязку, навешиваю индексы, работаю Но ведь это не совсем правильно. з.ы. Разница во времени - 70% ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 13:29:28 |
|
||
|
Работа с индексами на временной таблице
|
|||
|---|---|---|---|
|
#18+
при вставке нового значения в таблицу индекс перестраиваеся, естественно на это уходит много времени. в итоге проще один раз создать индекс после заполнения таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 13:33:12 |
|
||
|
Работа с индексами на временной таблице
|
|||
|---|---|---|---|
|
#18+
Тогда почему это происходит только на временных таблицах ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2002, 16:36:27 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1821498]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 328ms |

| 0 / 0 |
