|
Деактивировать и активировать индексы
|
|||
---|---|---|---|
#18+
Делаю вставку большого числа строк. Хочу деактивировать и опосля вставки активиротвать индексы. Есть ли такая комманда, или необходимо удалять/создавать их? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2010, 16:27 |
|
Деактивировать и активировать индексы
|
|||
---|---|---|---|
#18+
Нужно удалять и создавать. Хотя при вставке в транзакции смысла в этом особого нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2010, 19:55 |
|
Деактивировать и активировать индексы
|
|||
---|---|---|---|
#18+
Т.е. если делать вставку одной транзакцией, то обновление индексов будет производится в конце операции? Имеет ли смысл разбивать вставку 50 000 тыс. записей на отдельные транзакции, например, по 10 000 тыс. ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2010, 20:23 |
|
Деактивировать и активировать индексы
|
|||
---|---|---|---|
#18+
triaТ.е. если делать вставку одной транзакцией, то обновление индексов будет производится в конце операции? Имеет ли смысл разбивать вставку 50 000 тыс. записей на отдельные транзакции, например, по 10 000 тыс. ? Зависит от ваших настроек, проверяйте на своих данных. Нужно учитывать, что модифицируемые данные и индексы должны помещаться в кэш для оптимального быстродействия, а размер кэша считается в страницах, причем размер страницы по умолчанию слишком мал. Вот как пример, здесь исследуется создание индексов для случаев достаточного и недостаточного размеров кэша: Degradation of indexing speed in SQLite 3.6.20 ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2010, 13:06 |
|
|
start [/forum/moderation_log.php?user_name=sidiscom]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
get settings: |
9ms |
get forum list: |
12ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
others: | 846ms |
total: | 1023ms |
0 / 0 |