[OSM-dev] Patch to osm2pgsql for faster updates
Lennard
ldp at xs4all.nl
Tue Jan 25 08:02:02 GMT 2011
On 25-1-2011 5:04, Erik Burrows wrote:
>
> In my 8.4 database, when I re-create the planet_osm_ways_nodes and
> planet_osm_rels_parts indexes with fastupdate=off, diff import times go
> from being progressively slower after a vacuum, to being consistent in
> terms of import time, accounting for the variation of diff size
> hour-to-hour.
Which would be expected, upon reading what fastupdate does. Slower
overall, but consistent. The widely differing diff apply times with
fastupdate=on would be due to both having to parse the regular index and
the temporary one, and it possibly hitting autovacuum or the work_mem
limit during diff processing, therefore triggering an immediate
consolidation of the index.
> This is the same positive change in behavior I saw when setting
> fastupdate=off in 9.0.2.
So you imply that you saw the same gradual slowdown in 9.0.2 with
fastupdate=on?
My experiences with 9.0.2 could very well be biased, since I switched
from 8.4 to 9.0 the same time I started using more powerful hardware.
A.k.a. a 'real server' with a 10k rpm scsi raid0 instead of a single
disk sata desktop disk. :)
However, I've also switched our NL test server from 8.4 to 9.0.2 soon
after, and that also feels a bit faster when processing diffs. That
virtual hardware hasn't changed.
> My 8.4 db, on a SATA disk is now just better than 1:1 for applying
> hourly diffs, and my 9.0.2 db on SSD is about 4:1. (diff size to apply
> time)
With minutely diffs, even when processing an hours worth
(maxInterval=3600), I think I never hit 1:1, even when on that SATA
desktop disk I mentioned earlier. I could always catch up, meaning diffs
would apply faster than the interval they represent.
For those interested to try fastupdate=off, the manual says you can do
ALTER INDEX and then vacuum + rebuild the index. That saves you from
having to do a reimport with osm2pgsql.
--
Lennard
More information about the dev
mailing list