The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"PostgreSQL ОЧЕНЬ сильно тормозит"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Оптимизация и Промышленные системы (Public)
Изначальное сообщение [Проследить за развитием треда]

"PostgreSQL ОЧЕНЬ сильно тормозит" 
Сообщение от Moralez emailИскать по авторуВ закладки(ok) on 19-Окт-04, 00:03  (MSK)
Сотворил систему для мониторинга локальных сетевых ресурсов (50 FTPD-ов), в сумме 300.000 файлов, 1.5ТБ данных. Сервер - cel1466/320MB, gentoo распоследний, postgresql из portage (7.4.5, но потом попробовал и 8.0.0b3). Беда такая: "текучка" достаточно большая +-20.000 файлов в сутки, то есть 20.000 записей в день надо удалять. Причём добавляется всё практически мгновенно, выборка тоже, а вот с UPDATE (аттрибут erased делаем true) ЖУТЧАЙШИЕ тормоза. Пробовал заменить на DELETE, то же самое. Жутчайшие - это удаление 100 (сто!!) записей за 15 минут. Удаление производится из perl-скрипта, autocommit вЫключен. Доки по оптимизации прочитал, sync вЫключил, sharedbuffer-ы и больше делал и меньше, остальные параметры тоже. Не влияет! :-( Во время этого удаления загрузка CPU 99% postmaster-ом, дисковая активность никакая (35КВ/сек). Удаляю вроде б как надо, один раз $d->begin_work;$h->prepare, в цикле $h->execute с параметрами, после цикла $d->commit. Так же пробовал, в пределах одной транзакции: одним запросом удаляем все записи на этого пользователя, потом добавляем все те, которые удалять не надо было. Но не помогает.... Подскажите, плиз, что не так?! :-(((
  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "PostgreSQL ОЧЕНЬ сильно тормозит" 
Сообщение от Moralez emailИскать по авторуВ закладки(ok) on 19-Окт-04, 00:06  (MSK)
да! общий список файлов лежит в одной таблице (есть ещё десяток других, но они уже с другими данными), то есть табличка на 250.000-350.000 записей(9 столбцов). Многовато, но в документации обещали 1млн запросто! %-(


p.s. Индексов, конечно же, никаких нет! :-(

p.p.s. ОЗУ тоже хватает, своппнга не происходит!

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "PostgreSQL ОЧЕНЬ сильно тормозит" 
Сообщение от uldus Искать по авторуВ закладки(ok) on 19-Окт-04, 09:19  (MSK)
> Причём добавляется всё практически мгновенно, выборка тоже, а вот с
> UPDATE (аттрибут erased делаем true) ЖУТЧАЙШИЕ тормоза.

Попробуй VACUUM ANALYZE из crontab раз в час и VACUUM FULL раз в день в самое ненагруженное время.

> 250.000-350.000 записей (9 столбцов)

Какая структура таблицы, varchar и text есть ? Какая интенсивность добавления данных, попробуй прекратить INSERT'ы и удалить что-нибудь одним запросом без begin/commit, на спящей базе.

И самое гравное, для ключа который фигурирует в условии DELETE, есть индекс ? Если нет, то добавь, иначе он у тебя перебирает все записи в базе на каждое удаление.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "PostgreSQL ОЧЕНЬ сильно тормозит" 
Сообщение от Moralez emailИскать по авторуВ закладки(ok) on 19-Окт-04, 10:04  (MSK)
VACUUM ANALYZE и VACUUM FULL совсем не помогали ни грамма, а вот INDEX - это именно оно! Миллионы спасибов от тёмного, считавшего, что индексы ускоряют только SELECT-ы, а всё остальное гарантированно тормозят! %-(
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру