Обсуждение: Stats collector constant I/O
$ vmstat 2
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 55864 135740 123804 10712928 4 6 445 2642 0 0 5 1 92 2
1 0 55864 134820 123804 10713012 0 0 0 34880 540 338 1 1 98 0
0 0 55864 135820 123812 10712896 0 0 0 20980 545 422 1 1 98 0
Is this normal?
On May 14, 2014 9:19 PM, "Craig James" <cjames@emolecules.com> wrote:
>
> Day and night, the postgres stats collector process runs at about 20 MB/sec output. vmstat shows this:
>
> $ vmstat 2
> procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
> r b swpd free buff cache si so bi bo in cs us sy id wa
> 0 0 55864 135740 123804 10712928 4 6 445 2642 0 0 5 1 92 2
> 1 0 55864 134820 123804 10713012 0 0 0 34880 540 338 1 1 98 0
> 0 0 55864 135820 123812 10712896 0 0 0 20980 545 422 1 1 98 0
>
> iotop(1) shows that it's the stats collector, running at 20 MB/sec.
This is normal for 9.2 and below if you have hundreds of databases in the cluster.
Cheers,
Jeff
we had similar issue - you can try to move statfile to ramdisc
http://serverfault.com/questions/495057/too-much-i-o-generated-by-postgres-stats-collector-process
Pavel Stehule
CraigDay and night, the postgres stats collector process runs at about 20 MB/sec output. vmstat shows this:iotop(1) shows that it's the stats collector, running at 20 MB/sec.
$ vmstat 2
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 55864 135740 123804 10712928 4 6 445 2642 0 0 5 1 92 2
1 0 55864 134820 123804 10713012 0 0 0 34880 540 338 1 1 98 0
0 0 55864 135820 123812 10712896 0 0 0 20980 545 422 1 1 98 0
Is this normal?
On 15.5.2014 06:18, Craig James wrote: > Day and night, the postgres stats collector process runs at about 20 > MB/sec output. vmstat shows this: > > $ vmstat 2 > procs -----------memory---------- ---swap-- -----io---- -system-- > ----cpu---- > r b swpd free buff cache si so bi bo in cs us sy > id wa > 0 0 55864 135740 123804 10712928 4 6 445 2642 0 0 5 > 1 92 2 > 1 0 55864 134820 123804 10713012 0 0 0 34880 540 338 1 > 1 98 0 > 0 0 55864 135820 123812 10712896 0 0 0 20980 545 422 1 > 1 98 0 > > iotop(1) shows that it's the stats collector, running at 20 MB/sec. Which PostgreSQL version are you running? And how many databases / objects (tables, indexes) are there? With versions up to 9.1, and large number of objects this is quite normal. The file size is proportional to the number of objects, and may get written quite frequently. The newer versions (since 9.2) have per-database file, which usually significantly decreases the load - both CPU and I/O. But if you have all the objects are in a single database, this is not going to help. I'd recommend moving the stat directory to tmpfs (i.e. memory-based filesystem) - this improves the I/O load, but it may still consume nontrivial amount of CPU time to read/write it. Tomas