Апрель 30, 2008
Posted by admin
Тюнинг postgresql
Когда большая база начинает тормозить время браться за ее разгон.
Что нам для этого потребуется:
- Определить какое максимальное количество оперативной памяти мы можем выделить для работы PostgreSQL
- Количество и размеры таблиц в оптимизируемой базе
- Частота обновления данных
Будем оптимизировать использование оперативной памяти, так как для выполнения команды Select с дополнительными условиями на больших таблицах занимает много времени. Есть такие замечательные понятия ИНДЕКСЫ - они позволяют выполнять поиск данных быстрее, чем прямым поиском. Для создания индексов в PostgreSQL есть специальная команда CREATE INDEX. Индексы лучше создавать после анализа наиболее часто выполняемых SQL-запросов, например если в таблице часто идет выборка по полю где хранится количество потребленного трафика и дате этой записи, то нам нужен индекс который будет объединять в себе два этих поля (такое тоже возможно).
После создания всех нужных индексов, переходим к оптимизации конфигурации. Параметры которые нужно оптимизировать находятся в в файле postgresql.conf
Первые параметры которые нужно оптимизировать это объем памяти выделяемой под один процесс:
shared_buffers
на всех форумах и в самом файле конфигурации пишут что значение для этого параметра следует устанавливать в два раза больше, чем максимальное количество подключений max_connections*2, причем каждый буфер занимает 8K.
1 Comments
Май 19, 2008
Автор молодец
Leave a comment