понятен ещё один параметр. Что такое большое колличество записей и что такое много обрабатываемых записей? Могу ли я как то понять надо ли мне увеличить этот параметр?
—-
checkpoint_segments
На эту настройку стоит обратить внимание, если у Вас происходит немалое количество записей в БД (для высоконагруженных систем это нормальная ситуация). Postgres записывает данные в базу данных порциями (WALL сегменты) — каждая размером в 16Mb. После записи определенного количества таких порций (определяется параметром checkpoint_segments) происходит чекпойнт. Чекпойнт — это набор операций, которые выполняет postgres для гарантии того, что все изменения были записаны в файлы данных (следовательно при сбое, восстановление происходит по последнему чекпойнту). Выполнение чекпоинтов каждые 16Мб может быть весьма ресурсоемким, поэтому это значение следует увеличить хотя бы до 10.
Для случаев с большим количеством записей, стоит увеличивать это значение в рамках от 32 до 256.
А какая у Вас версия PostgreSQL, OS (и откуда дистрибутив)? Просто в большинстве дистрибутивов в postgresql.conf есть (в закомментированном виде) почти все параметры.
Обсуждают сегодня