Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
PostgreSQL 8.0.1 таблица 2 миллиона записей делаю update table1 set column1=1 уже идет минут 5 - мона выпить кофе Куда копать ? Почему все так долго ? На FoxPro 2.6 for DOS это дело занимает секунды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 13:50 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
и даже Vacum не помогает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 14:26 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
потому что ты обновляешь все 2 миллиона записей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 15:38 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
puzzleпотому что ты обновляешь все 2 миллиона записей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 15:51 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
Вообще, при изменении данных в таблице без индексов прослеживается линейная зависимость... Запрос успешно завершён: строк изменено: 2000000, время: 61516 мс. Запрос успешно завершён: строк изменено: 1000000, время: 29999 мс. Если есть индексы, то время, конечно, больше :) У меня комп. 2 ГГц, если посчитать кол-во тактов, кот. тратится на изменение одного значение в строке, то получиться примерно ~60... Вполне достойно, думаю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 15:55 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
так че делать ? или это врожденное свойство PostgreSQL ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 17:02 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
Я бы сказал, что это врожденное свойство любой БД, которая содержит индексы, которые приходится перестраивать. Метод решения: 1. Грохнуть индекс по требуемому полю. 2. Обновить его. 3. Создать новый индекс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 17:55 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
Ещё можно грохнуть форейн кеи из таблиц - которые ссылаются на эту таблицу, а также отключить все тригера на этой таблице - потом всё включить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2005, 23:29 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
Это врожденное свойство PostgreSQL. Для версионника UPDATE - это всё равно что INSERT, делается копия всех измененных строк - т.е. при полном обновлении таблица растет в 2 раза. Плюс все изменяемые страницы пишутся в лог. Если изменения страниц данных/индексов пишутся через дисковый кэш и при достаточном объеме оперативки не тормозят, то лог пишется напрямую на диск. Но конечно, перестройка индекса тоже влияет. Выход - нормализовать базу (уменьшается размер отдельной строки), а лучше исключить частое обновление всей таблицы в принципе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2005, 03:48 |
|
||
|
Страшно медленный Update - что делать ?
|
|||
|---|---|---|---|
|
#18+
фффф Выход - нормализовать базу (уменьшается размер отдельной строки), кхм. И тем самым увеличить количество проверок зависимостей и т.п. при апдейтах??? (правда при использовании для связи никогда не обновляемых суррогатов это возражение снимается). Все таки при массовых вставках/апдейтах снос индексов до (в начале пакета) и восстановление после - рулит (опытный факт - раз в 5). Т.ч. возможно и разработчикам есть куда развиваться ("отложенное" перестроение индексов и отложенная же проверка чеков и связей при стейтменте на большое число записей). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2005, 11:40 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=33166056&tid=2007122]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
131ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 263ms |
| total: | 487ms |

| 0 / 0 |
