Thread: Limit I/O bandwidth of a certain backend

Limit I/O bandwidth of a certain backend

From
Vlad Arkhipov
Date:
Is there a way to limit I/O bandwidth/CPU usage of a certain backend? It
seems that ionice/renice makes no sense because of bgwriter/WAL writer
processes are not a part of a backend. I have a periodic query (every
hour) that make huge I/O load and should run in background. When this
query runs all other fast queries slow down dramatically.


Re: Limit I/O bandwidth of a certain backend

From
Bryan Murphy
Date:
On Tue, May 5, 2009 at 2:31 AM, Vlad Arkhipov <arhipov@dc.baikal.ru> wrote:
> Is there a way to limit I/O bandwidth/CPU usage of a certain backend? It
> seems that ionice/renice makes no sense because of bgwriter/WAL writer
> processes are not a part of a backend. I have a periodic query (every
> hour) that make huge I/O load and should run in background. When this
> query runs all other fast queries slow down dramatically.

Could you use something like slony to replicate the needed data to a
secondary database and run the query there?

Bryan

Re: Limit I/O bandwidth of a certain backend

From
Greg Smith
Date:
On Tue, 5 May 2009, Vlad Arkhipov wrote:

> Is there a way to limit I/O bandwidth/CPU usage of a certain backend? It
> seems that ionice/renice makes no sense because of bgwriter/WAL writer
> processes are not a part of a backend.

The background writer and WAL writer are pretty low users of CPU and I/O
relative to how much an expensive query uses in most cases.  You should
try out one of the nice approaches and see if it works for you rather than
presuming the background processes will thwart you here.  There isn't
anything better available in the database yet, so it's the closest things
to a good solution available right now anyway.

--
* Greg Smith gsmith@gregsmith.com http://www.gregsmith.com Baltimore, MD