[OSM-dev] osm2pgsql: mixing normal and slim mode
Frederik Ramm
frederik at remote.org
Wed Dec 1 07:17:44 GMT 2010
Hi,
currently you can run osm2pqgsl in one of two modes - "normal" or
"slim". Normal mode puts all temporary data in RAM. Slim mode puts all
temporary data into the PostGIS database, which, as a "side effect",
allows applying diffs later:
Mode | temp. data | database ready for diffs
-----------------------+----------------+-------------------------
normal | in memory | no
slim | on disk (db) | yes
-----------------------+----------------+-------------------------
There is no compelling reason why these two features must be mixed; it's
for historical reasons really. One could just as well have
Mode | temp. data | database ready for diffs
-----------------------+----------------+-------------------------
normal-tmpfiles | on disk (file) | no
slim-fast | in memory | yes
-----------------------+----------------+-------------------------
The "normal-tmpfiles" mode would allow people with less RAM to do a
"non-slim" import, using some optimised disk storage (e.g. simply a
mmap()ed file, or a library like stxxl), and thus getting results much
faster than the current slim mode which they're forced to use. Or is
there reason to believe that simply using the existing normal mode and
letting the system eat into swapspace would give similar results?
The "slim-fast" mode would be a way for users with lots of memory to
utilize this fully when doing an import. Choosing a very high value for
the node cache in slim mode (-C) already goes a long way in this
direction but there would have to be a "way cache" as well to make this
complete.
Has anyone thought about these things (and maybe found them to be
nonsense), or actually coded anything in that direction?
Bye
Frederik
More information about the dev
mailing list